A social photo app where viewers never see engagement. No like counts, no comments, no share counts, no follower counts on anyone. You add people to your circle and see what they post. Only the author of a post can open its numbers.
iOS first. Expo SDK 57, expo-router, React Native 0.86, TypeScript. Runs in the iOS simulator through Expo Go with seeded local data. No backend yet.
Already set up? The short version:
npm install
npm run ios # opens Expo Go on the booted simulator
npx tsc --noEmit # typecheck
npx expo lintRead AGENTS.md for the product rules and the brand. The roast that shaped
the product is in docs/roast-verdict.md; the brand kit is in
docs/brand-kit.md.
This walks you from a blank Mac to the app running in an iPhone simulator, with Claude Code doing the coding. No experience needed. Budget about an hour, most of it waiting for downloads.
You need: a Mac with about 30 GB free, an Apple ID (for the App Store), a GitHub account (free, github.com), and a Claude account on the Pro or Max plan (claude.ai) for Claude Code.
Terminal shows up a lot below. Open it with Spotlight: press cmd + space, type
Terminal, press return. Paste each command and press return.
- Open the App Store, search for Xcode, click Get. It is large (15 GB or more), so start it first and move on to step 2 while it downloads.
- When it finishes, open Xcode once. Accept the license. When it asks which platforms to install, tick iOS and continue. If you missed that screen, go to Xcode, Settings, Components, and install the iOS platform there.
- In Terminal, paste these two lines one at a time (it asks for your Mac password, which does not show as you type):
sudo xcode-select -s /Applications/Xcode.app/Contents/Developer
sudo xcodebuild -license accept- Go to https://nodejs.org and click the big LTS download button.
- Open the downloaded file and click through the installer.
- Check it worked. In Terminal:
node -vIt should print a version starting with v22 or higher.
- Go to https://code.visualstudio.com and click Download for Mac.
- Unzip it and drag Visual Studio Code into your Applications folder.
- Open VS Code. Press cmd + shift + P, type
shell command, and choose Install 'code' command in PATH.
- In Terminal:
curl -fsSL https://claude.ai/install.sh | bash- Close Terminal completely (cmd + Q) and open it again.
- Type
claudeand press return. It opens a browser window to sign in. Sign in with your Claude account, then come back to Terminal. Type/exitto leave for now. - In VS Code, open Extensions (cmd + shift + X), search Claude Code, and click Install. This gives you Claude inside VS Code as well.
- Open VS Code. On the Welcome screen click Clone Git Repository. If you
do not see the Welcome screen, press cmd + shift + P and type
Git: Clone. - Choose Clone from GitHub. A browser window asks you to sign in to GitHub and allow VS Code. Allow it.
- Type
superalex051/leveland pick it from the list. - Choose a folder to put it in (Desktop is fine). When VS Code asks "Would you like to open the cloned repository?", click Open.
If the repository is private and does not show up, ask Alex to add your GitHub username as a collaborator first.
- In VS Code, open the menu Terminal, then New Terminal. A terminal opens at the bottom of the window, already inside the project.
- Paste and wait for it to finish (a few minutes the first time):
npm install- Then:
npm run iosThe first time, it boots an iPhone simulator and installs Expo Go into it. Then the app opens. You should see a cream screen with the Level wordmark asking for your name.
Leave this terminal running while you use the app. To stop it, click in the
terminal and press ctrl + C. To start again, run npm run ios again.
- In VS Code, open a second terminal (the + button on the right of the terminal panel) and type:
claude- Paste this as your first message:
Read AGENTS.md and docs/brand-kit.md. Then walk me through what this app is and how the code is organized, in plain language.
- From then on, say what you want in ordinary words. Some examples:
Change the accent color to a deep green and show me the result in the simulator.
Add a "saved" tab that shows the posts I bookmarked.
Something looks wrong on the profile screen. Here is what I see: ...
Claude Code asks before it runs commands or edits files. Read what it wants to do and press return to allow it. It runs the typecheck and the app itself, so you can ask it to prove a change works.
AGENTS.md is the rulebook Claude reads on every start. It says what the app
is, what must never change (no numbers shown to viewers), and how the brand
works. If you want to change a rule, change it there and tell Claude.
- "xcrun: error" or "unable to find simulator": step 1 is not finished.
Open Xcode, let it finish installing components, and run the two
sudolines again. - "command not found: node": step 2. Reinstall Node and reopen Terminal.
- "command not found: claude": step 4. Reopen Terminal after installing.
- The simulator opens but the app shows a red error screen: click in the
terminal that is running
npm run iosand pressrto reload. If it stays red, stop it with ctrl + C and runnpm run iosagain. - "Unmatched Route": same fix, press
ror restartnpm run ios. - A blue gear button covers part of the screen in the simulator: that is Expo Go's developer button. Hold it down to hide it.
- Anything else: ask Claude Code. Paste the exact error text and say "this happened when I ran npm run ios". It usually fixes it.
npm run ios # start the app in the simulator
npx tsc --noEmit # check the code for type errors
npx expo lint # check the code for style problems