Expo makes it easy to run your React Native app on an iPhone, even if you don’t own a Mac. Below are the two main methods:
METHOD 1: Run on iPhone using Expo Go (Fastest & Easiest)
Works on Windows, Mac, or Linux
No Apple Developer account required
Step 1 — Install Expo Go on your iPhone
Download Expo Go from the App Store.
Step 2 — Start your Expo project
In your project folder, run:
npx expo start
This will open Expo DevTools in the browser and a QR code in your terminal.
Step 3 — Scan the QR Code
Open Expo Go → tap Scan QR Code → point the camera at the QR code.
Your app loads instantly and updates automatically when you save changes.
✔ No Mac needed
✔ No Xcode needed
✔ Hot reload supported
METHOD 2: Run on iOS Simulator (Mac ONLY)
If you have a Mac and Xcode installed, you can run your app in the iOS Simulator.
Step 1 — Install Xcode from the App Store
Step 2 — Start the Expo dev server
npx expo start
Step 3 — Press “i” or run this command:
npx expo start --ios
Expo will launch the iOS Simulator and open your app automatically.
METHOD 3: Build a standalone iOS app (TestFlight or .ipa)
This is for testing or distributing to others.
Requirements:
Step 1 — Install EAS CLI
npm install -g eas-cli
Step 2 — Log in
eas login
Step 3 — Configure your project
eas build:configure
Step 4 — Build for iOS
eas build -p ios
Expo will create a build you can distribute via:
TestFlight
Direct .ipa file
Expo build dashboard
⭐ Which Method Should You Use?
| Goal | Best Method |
|---|
| Quickly testing on your iPhone | Expo Go |
| Testing on iOS simulator | Xcode + Mac |
| Sending to users/testers | EAS Build |
| Publishing to App Store | EAS Build + Apple account |