Expo : Framework React Native, SDK, EAS Build Guide
Expo est un framework + plateforme pour apps React Native — managed workflow, EAS Build, Expo Go, OTA updates. Ships apps iOS/Android sans config native.
Qu'est-ce qu'Expo ?
Expo est un framework open-source et plateforme cloud pour construire des apps React Native. Il abstrait la complexité native iOS et Android pour que les développeurs JavaScript puissent shipper des apps mobile sans écrire de Swift, Kotlin ou maintenir les configurations Xcode/Android Studio. Expo est à React Native ce que Next.js est à React : du tooling opinionated qui gère l'infrastructure ennuyeuse.
Expo inclut l'Expo SDK (set curaté de modules natifs avec APIs JavaScript), Expo Go (client development pour tester sur devices sans builds locaux), EAS (Expo Application Services — cloud build, submit, update) et l'Expo CLI.
Pourquoi utiliser Expo ?
- Skip setup natif.
- Cross-platform depuis une codebase.
- SDK curaté.
- EAS Build.
- OTA updates.
- File-system routing.
- Backed par compagnie Stripe-funded.
Workflows Expo : managed vs bare
| Workflow | Ce que vous écrivez | Accès code natif | Meilleur pour |
|---|---|---|---|
| Managed (default) | Seulement JS/TS | Via Expo SDK + config plugins | La plupart des apps |
| Bare | JS/TS + code natif | Full Xcode/Android Studio | Apps nécessitant custom native modules |
Composants écosystème Expo
| Composant | But |
|---|---|
| Expo CLI | Dev server, scaffolding |
| Expo SDK | 50+ modules natifs |
| Expo Go | App sandbox pour testing |
| EAS Build | Cloud iOS/Android builds |
| EAS Submit | Auto-submit à App Store |
| EAS Update | Updates OTA |
| Expo Router | Routing file-based |
| Expo Dev Client | Dev client custom |
| Snack | Playground Expo browser-based |
Quickstart : créer une app Expo
npm install -g expo
npx create-expo-app my-app
cd my-app
npx expo startModules Expo SDK courants
| Module | Capability |
|---|---|
expo-camera | Accès caméra |
expo-location | GPS, geocoding |
expo-notifications | Push notifications |
expo-secure-store | Storage key-value chiffré |
expo-local-authentication | FaceID / TouchID |
expo-image-picker | Photo library/caméra picker |
expo-file-system | File I/O |
expo-haptics | Haptic feedback |
expo-maps | Cartes natives |
expo-sqlite | Base de données SQLite |
EAS Build : cloud builds
{
"build": {
"production": {
"ios": { "simulator": false },
"android": { "buildType": "app-bundle" }
}
}
}OTA updates avec EAS Update
eas update --branch production --message "Fix login bug"Expo vs React Native CLI
| Aspect | Expo | React Native CLI |
|---|---|---|
| Complexité setup | Basse | Haute |
| Code natif | Via config plugins | Direct |
| Processus build | EAS Cloud | Local Xcode/Gradle |
| OTA updates | EAS Update built-in | Setup manuel |
| App size | Légèrement plus grande | Plus slim |
| Meilleur pour | La plupart des apps | Heavy customization native |
FAQ : Expo
Expo est-il gratuit ?
Le framework + SDK sont open-source. EAS a des tiers gratuits et plans payants.
Devrais-je utiliser Expo ou React Native CLI ?
Default à Expo.
Les apps Expo peuvent-elles utiliser n'importe quel module natif ?
Oui via config plugins.
Qu'est-ce qu'Expo Go ?
Une app sandbox gratuite pour iOS/Android.
Quelle est la différence entre EAS Build et EAS Update ?
EAS Build compile des binaries natifs. EAS Update pousse des changements JS bundle.
Puis-je publier sur App Store / Play Store ?
Oui. EAS Submit automatise la submission.
Qu'est-ce qu'Expo Router ?
Routing file-based pour React Native.
Expo supporte-t-il le web ?
Oui — le même code peut targeter React Native Web.
Load-testez le backend de votre app Expo avec LoadFocus
Expo gère le client mobile ; LoadFocus gère la charge backend. Exécute des scripts JMeter et k6 contre votre API depuis 25+ régions avec jusqu'à 12 500 VUs. Inscrivez-vous sur loadfocus.com/signup.
Outils LoadFocus connexes
Mettez ce concept en pratique avec LoadFocus — la plateforme même qui propulse tout ce que vous venez de lire.