Skip to main content
This guide covers everything you need to develop, build, and deploy Expo apps. Choose your setup based on what you’re building:
  • Quick start: Just Node.js and a phone → Use Expo Go
  • Full setup: Native builds → Install platform-specific tools

System Requirements

Required for All

  • Node.js 18 or newer
  • npm, yarn, or pnpm
  • Code editor (VS Code recommended)

For Native Builds

  • macOS (for iOS development)
  • Xcode 15+ (iOS)
  • Android Studio (Android)
  • CocoaPods (iOS)

Step 1: Install Node.js

Expo requires Node.js version 18 or newer.
Using Homebrew (recommended):
Or download from nodejs.org:Visit nodejs.org and download the LTS version.Verify installation:
The Expo SDK requires Node.js 22.14.0 as specified in the monorepo, but Node 18+ is generally supported for app development.

Step 2: Install Expo CLI

Expo CLI is included with the expo package. You don’t need to install it globally!
The @expo/cli package is versioned with the Expo SDK, ensuring compatibility. Running npx expo uses your project’s local version automatically.Benefits:
  • No version conflicts between projects
  • Automatic updates with SDK upgrades
  • Faster CI/CD (no global install needed)

Verify CLI Installation

You should see output like:

Step 3: Platform-Specific Setup

iOS development requires a Mac with macOS.

Install Xcode

  1. Install Xcode from the Mac App Store (15+ required)
  2. Open Xcode and accept the license agreement
  3. Install command line tools:

Install CocoaPods

CocoaPods manages iOS native dependencies:
Or using Homebrew:

Verify iOS Setup

Set Up iOS Simulator

Open the iOS Simulator:
In Xcode, go to Xcode → Settings → Platforms to download additional iOS versions.

Step 4: Editor Setup

Install VS Code Extensions:
  1. Open VS Code
  2. Install these extensions:
    • ES7+ React/Redux/React-Native snippets
    • React Native Tools
    • Prettier - Code formatter
    • ESLint
Configure VS Code: Create .vscode/settings.json in your project:
.vscode/settings.json

Step 5: Verify Installation

Create a test project to verify everything works:
1

Create test project

2

Start development server

3

Test on platforms

iOS Simulator (Mac only):
Android Emulator:
Web Browser:
Physical Device:
  • Scan QR code with Expo Go app
If your app opens successfully on any platform, your setup is complete!

Troubleshooting

Install Xcode command line tools:
If that doesn’t work, reset the path:
Add to your shell profile:
~/.zshrc
Reload:
Reset iOS Simulator:
  1. Open Simulator app
  2. Go to Device → Erase All Content and Settings
  3. Try again
Or from command line:
Create a new emulator in Android Studio:
  1. Open Android Studio
  2. Tools → Device Manager
  3. Click Create Device
  4. Follow the wizard
Update CocoaPods and try again:
Use a Node version manager:nvm (Mac/Linux):
nvm-windows:Download from github.com/coreybutler/nvm-windows

Package Manager Choice

Expo works with npm, yarn, or pnpm:
Once you choose a package manager, stick with it for the entire project. Don’t mix them!

Next Steps

Quick Start

Create your first app in 5 minutes

Core Concepts

Learn how Expo works

Tutorial

Build a complete app step-by-step

Development Builds

Set up for custom native code