Skip to main content
Once you’ve cloned the repo and run yarn install, you’re ready to launch! This guide covers iOS, Android, and Web.
Fast path: You can launch without API keys (mock mode is automatic), but we recommend running yarn setup early so you test against your real services.

Quick Commands

From the apps/app directory:
Or from the monorepo root:
Your app will use real services if .env is configured; otherwise it falls back to mock mode. Add real API keys early for more accurate behavior.

Platform Details

Requirements:
  • Xcode installed (latest version recommended)
  • iOS Simulator available
First run takes longer - Expo needs to build the native iOS project. Subsequent runs are much faster.Using a specific simulator:
Requirements:
  • Android Studio installed
  • Android Emulator configured (or physical device)
  • ANDROID_HOME environment variable set
First run takes longer - Expo needs to build the native Android project.Troubleshooting:
  • Make sure an emulator is running or a device is connected
  • Run adb devices to verify your device is recognized
Fully supported! Shipnative runs on web via Expo Web and react-native-web.
Opens at http://localhost:19006What works on web:
  • All UI components (Unistyles 3.0 supports web)
  • Authentication (Supabase works everywhere)
  • Payments (RevenueCat Web Billing)
  • Analytics (PostHog)
  • Dark mode
  • Responsive design
Production build:

Mock Mode vs Real Services

When you run the app without API keys configured, mock mode activates automatically:
We recommend connecting real services early!While mocks are convenient for initial exploration, real services behave differently:
  • Email confirmation and OAuth require real Supabase
  • Payment flows need RevenueCat products configured
  • Analytics only capture real data with PostHog connected
Run yarn setup to configure services interactively.
How to check service status: Open the Developer Menu (Cmd+D on iOS, Cmd+M on Android) and check “Service Status”.
Learn more about mock services →

Developer Menu

Access the dev menu to debug and test: Useful options:
  • Component Showcase - see all UI components
  • Toggle dark/light mode
  • Switch between Free/Pro user
  • View service status (mock vs real)
  • Reload the app

Troubleshooting

Clear the cache and restart:
Or kill the process on port 8081:
Clean and reinstall CocoaPods:
Set your ANDROID_HOME environment variable:
Add this to your ~/.zshrc or ~/.bashrc.
  1. Open the dev menu
  2. Ensure “Fast Refresh” is enabled
  3. If still not working, restart Metro: yarn app:start --clear

Next Steps

Project Structure

Understand where things live in the codebase

Start Building

Build features with AI assistance