What are Development Builds?
A development build is a debug build of your app that includes theexpo-dev-client package. Unlike Expo Go, which has a fixed set of native modules, development builds contain exactly the native code your app needs.
Development builds include:
- Custom native modules - Any native module from npm or your own native code
- Dev client UI - A launcher screen to load different versions of your JavaScript
- Enhanced debugging - Improved network inspection, error boundaries, and developer menu
- Fast iteration - Hot reloading and fast refresh for JavaScript changes
Expo Go vs Development Builds
| Feature | Expo Go | Development Build |
|---|---|---|
| Native modules | Fixed set included | Any module you install |
| Setup time | Instant (just download) | Requires initial build (~10-20 min) |
| JS iteration | Instant reload | Instant reload |
| Native changes | Not possible | Requires rebuild |
| Production-like | No | Yes |
When to Use Development Builds
You should use development builds when:1. Using Custom Native Modules
If your app requires native modules not included in Expo Go:app.json
2. Testing Native Configuration
When you need to test platform-specific settings:- iOS entitlements and capabilities
- Android permissions and manifest configurations
- Custom app icons, splash screens, or schemes
- Native build properties (SDK versions, architectures)
3. Preparing for Production
Development builds use the same native code as production:4. Working in Teams
Share builds with teammates without Xcode or Android Studio:- iOS: Distribute via TestFlight or ad-hoc provisioning
- Android: Share APK files directly
Benefits
Faster Development Workflow
Once the initial build is complete, you get:- Instant JavaScript reloads
- No need to rebuild for JS changes
- Hot module replacement
- Fast refresh
Production Parity
Your development environment matches production:- Same native dependencies
- Same build configuration
- Same bundling process
- Same performance characteristics
Enhanced Developer Experience
expo-dev-client adds powerful tools:
Flexible Deployment Options
- Test multiple JavaScript bundles without rebuilding
- Load PR previews instantly
- Switch between development servers
- Test updates and rollbacks
Development Build Workflow
A typical development workflow:Cost Considerations
Local Builds (Free)
- Build on your own machine
- Requires Xcode (iOS) or Android Studio (Android)
- Full control over build environment
EAS Build (Paid)
- Cloud building service
- No local tooling required
- Faster builds on powerful servers
- Free tier available
Next Steps
Creating Builds
Learn how to create your first development build
Installation
Install builds on your devices
Debugging
Debug your development builds
Testing
Set up testing for your app