expo package.
Installation
The CLI is automatically installed with theexpo package:
Usage
Run Expo CLI commands usingnpx:
Global Options
These options are available for all commands:Output the version number
Display help for command
Disable interactive prompts
Commands
expo start
Start a development server for your project.Options
Options
Clear the Metro bundler cache
Enable development mode
Disable development mode (production mode)
Minify JavaScript
Start server with HTTPS
Port to run Metro bundler on
Hostname for the dev server
Start a tunnel for the dev server
Use LAN connection
Use localhost connection
Skip network requests
Start for a development build (non-Expo Go)
Start for Expo Go
Custom URL scheme to use when launching the app
Open on connected Android device/emulator
Open on connected iOS simulator
Open in web browser
Path to private key for code signing
expo run:ios
Build and run the iOS app locally.Options
Options
expo run:android
Build and run the Android app locally.Options
Options
expo prebuild
Generate native iOS and Android directories for your project.Options
Options
Delete native directories before generating
Use npm to install dependencies
Use Yarn to install dependencies
Skip installing npm packages
Template to use for native directories
Platforms to generate (ios, android, or all)
Running
prebuild will create ios/ and android/ directories. These should be added to .gitignore if using continuous native generation.expo install
Install a package and ensure compatible versions with your Expo SDK.Options
Options
expo export
Export the app for deployment.Options
Options
expo build
Deprecated. Use EAS Build instead.expo config
Show the project config.Options
Options
expo customize
Generate template files for customization.expo doctor
Check the project for potential issues.Options
Options
Fix dependency version issues
expo lint
Run ESLint on the project.Options
Options
Automatically fix problems
expo login
Login to your Expo account.expo logout
Logout from your Expo account.expo whoami
Show the currently authenticated account.expo register
Create a new Expo account.Autolinking
expo-modules-autolinking
Search for Expo modules installed in the project.search- Search for Expo modulesresolve- Resolve module configurationverify- Verify autolinking setup
Environment Variables
EXPO_DEBUG
Enable debug logging:EXPO_NO_TELEMETRY
Disable anonymous usage telemetry:EXPO_USE_METRO_WORKSPACE_ROOT
Use the workspace root as the Metro project root:Package Manager Detection
The CLI automatically detects your package manager:- Checks for lockfiles (
package-lock.json,yarn.lock,pnpm-lock.yaml,bun.lockb) - Falls back to npm if no lockfile is found
- Can be overridden with
--npm,--yarn,--pnpm, or--bunflags
Interactive Prompts
The CLI includes interactive prompts for better developer experience:- Device selection: Choose which device to run on
- Package installation: Confirm installing missing packages
- Config generation: Confirm creating config files
- Platform selection: Choose which platforms to target
--non-interactive for CI/CD environments.
Keyboard Shortcuts
When the dev server is running, use these shortcuts:a- Open on Androidi- Open on iOSw- Open in web browserr- Reload appm- Toggle menuj- Open debuggerc- Clear Metro cached- Show dev menu?- Show all commands