Managed Expo (SDK 57) + Expo Router shell for an AI-assisted machine coding interview.
You may use any AI tools you prefer during the round (Cursor, ChatGPT, Claude, Copilot, etc.). This repo is only a local shell — the interviewer sends the real question at interview time, and one command loads it into this project.
Do this ahead of time so the session can start immediately.
Create a CodeSandbox account (free) or confirm you can log in. Part of the round may run in a CodeSandbox link the interviewer shares; you need an account to edit it.
- Node.js — current LTS (Node 20+). Check with
node -v. - Pick one platform and install its toolchain:
- iOS (macOS only): Xcode, then open it once and install the iOS Simulator when prompted.
- Android (macOS, Windows, Linux): Android Studio with an emulator (AVD) that boots.
- Physical device (optional): Expo Go on the phone, same Wi‑Fi as your computer.
npm run iosonly works on a Mac with Xcode. On Windows or Linux, use Android.
git clone https://github.com/headout/ho-rn-interview-starter.git
cd ho-rn-interview-starter
npm install
npm run ios # or: npm run androidConfirm the app opens on a simulator/emulator or device, then leave it in a working state. The checked-in src is a placeholder — it gets replaced during the interview.
You do not need to build any features beforehand, and you will not push anything anywhere. Working locally with no remote is fine.
The interviewer sends a question link. From your project root (the folder with package.json):
npm run question "<link>"That downloads the question, swaps in the new src, runs npm install if needed, and commits.
Then restart the app:
# stop the running app with Ctrl + C, then
npm run start # press i for iOS, a for AndroidIf the link fails or has expired, tell your interviewer and they will send a fresh one.
-
Screen looks wrong or Metro is stuck:
Ctrl + C, thennpx expo start -c(cleared cache). Pressingrin the terminal reloads. -
Missing packages after loading the question:
npm install, then restart. -
Still broken:
npm run clean npm install
Fix local setup before the call. Interview time should go to the coding task, not environment debugging.