Getting Started

Click View on your Phone in your a0 project to generate a QR code that works with:

a0.dev App

iOS Testing
  • Opens directly if installed
  • Shows install option if not
  • Hot reloading enabled

Expo Go v52

Android Testing
  • Must use version 52
  • Same QR code works
  • Full hot reload support
Once scanned, the connection persists across different apps. You won’t need to rescan unless you refresh the page.

Testing with the a0 App (iOS)

Quick Setup

1

Get the QR Code

Click View on your Phone in your a0 project.
2

Scan with iPhone Camera

  • If you have a0 app → Opens immediately
  • If not → Shows App Store install link
3

Start Testing

Your app loads with hot reloading enabled. Save changes in the editor and they appear instantly.

Testing with Expo Go v52 (Android)

Setup

1

Install Expo Go v52

Download from the Expo Website and verify version 52 in app settings.
2

Scan the QR Code

Use the same QR code from View on your Phone - it works for both a0 app and Expo Go.
3

Test Your App

App loads with full hot reloading support.

Limitations

Important: The a0 app does NOT support:
  • ❌ Payment processing (UI shows but transactions fail)
  • ❌ Ad networks
  • ❌ Some custom native modules
For testing payments or ads, you must test a native build.

Hot Reloading

Both a0 app and Expo Go provide seamless hot reloading:
  1. Instant Updates: Save in editor → See changes immediately
  2. Persistent Connection: Switch between apps without rescanning
  3. State Preservation: Component state maintained during updates
  4. Error Recovery: Clear errors shown with stack traces
The hot reload connection stays active even when switching between different apps on your phone. Only a page refresh breaks the connection.

Development Workflow

Rapid Testing Cycle

Testing Multiple Devices

You can test on multiple devices simultaneously:
  • Each device scans the same QR code
  • All devices update together
  • Test iOS and Android side-by-side

Debugging

Developer Menu

Shake your device or tap the screen with three fingers to access:
  • Reload - Refresh the app
  • Debug - Connect to debugger
  • Inspector - View component tree
  • Perf Monitor - See performance metrics

Console Logs

// Logs appear in:
// 1. Browser console (if connected)
// 2. Device logs

console.log('Debug message');
console.warn('Warning');
console.error('Error details');

Troubleshooting

Next Steps