Introduction
ScaleRocket Mobile — le boilerplate Expo + React Native pour construire et publier des apps iOS & Android en quelques jours.
ScaleRocket Mobile
ScaleRocket Mobile est un boilerplate d'application mobile prêt pour la production, construit avec Expo et React Native. Il vous fournit tout ce dont vous avez besoin pour construire, tester et publier une app native iOS & Android — authentification, navigation, notifications push, deep linking et plus — pour que vous puissiez vous concentrer sur votre produit.
Disponible avec un backend Supabase ou Convex.
Ce qui est inclus
- Authentification — Email/mot de passe + Google OAuth + Apple Sign-In via Supabase ou Convex
- Routing basé sur les fichiers — Expo Router avec navigation par onglets et pile
- Notifications push — Expo Notifications avec gestion des permissions et tokens
- Stockage sécurisé — Tokens stockés dans
expo-secure-store(chiffré sur l'appareil) - Auth biométrique — Face ID et empreinte digitale via
expo-local-authentication - Deep linking — Schéma d'URL
scalerocket://pour les callbacks OAuth et liens email - Gestion du profil — Profil utilisateur modifiable avec initiales en avatar
- Gestion des abonnements — Affichage du plan et intégration du portail de facturation Stripe
- Système de crédits — Facturation à l'usage avec solde et allocation
- EAS Build & Submit — Profils de build prêts à l'emploi pour développement, preview et production
- Mises à jour OTA — Poussez des mises à jour JavaScript sans review du store via EAS Update
Liens rapides
| Sujet | Description |
|---|---|
| Installation | Installer et lancer l'app |
| Authentification | Flux d'auth pour mobile |
| Notifications push | Activer les notifications |
| Navigation | Routing et navigation |
| App Store | Publier sur l'App Store |
| Play Store | Publier sur Google Play |
| Mises à jour OTA | Livrer des mises à jour sans review |
Prérequis
Avant de commencer, assurez-vous d'avoir :
- Node.js 20+ — Télécharger ici
- Compte Expo — Inscription gratuite
- Compte Supabase — Inscription gratuite (si vous utilisez la version Supabase)
- Compte Convex — Inscription gratuite (si vous utilisez la version Convex)
- Compte Apple Developer — 99$/an (requis pour l'App Store iOS)
- Google Play Console — 25$ une fois (requis pour le Play Store Android)
- EAS CLI — Installer avec
npm install -g eas-cli
Structure du projet
scalerocket-mobile/
├── app/ # Expo Router (routing basé sur les fichiers)
│ ├── _layout.tsx # Layout racine : garde d'auth + Stack
│ ├── (auth)/ # Écrans d'auth (non authentifié)
│ │ ├── _layout.tsx # Stack sans header
│ │ ├── login.tsx # Email/mot de passe + OAuth
│ │ ├── register.tsx # Création de compte
│ │ └── forgot-password.tsx # Réinitialisation du mot de passe
│ └── (tabs)/ # Écrans de l'app (authentifié)
│ ├── _layout.tsx # Navigateur à onglets : Accueil, Profil, Paramètres
│ ├── index.tsx # Onglet Accueil : crédits, plan, actions
│ ├── profile.tsx # Modifier nom, avatar, déconnexion
│ └── settings.tsx # Mot de passe, abonnement, suppression
├── lib/
│ ├── supabase.ts # Client Supabase avec adaptateur SecureStore
│ └── auth.ts # Hook useSession + fonctions d'auth
├── components/ # Composants réutilisables
├── assets/ # Icônes, écran de démarrage
├── app.json # Configuration Expo
├── eas.json # Profils EAS Build
└── package.jsonscalerocket-mobile/
├── app/ # Expo Router (routing basé sur les fichiers)
│ ├── _layout.tsx # Layout racine : garde d'auth + Stack
│ ├── (auth)/ # Écrans d'auth (non authentifié)
│ │ ├── _layout.tsx # Stack sans header
│ │ ├── login.tsx # Email/mot de passe + OAuth
│ │ ├── register.tsx # Création de compte
│ │ └── forgot-password.tsx # Réinitialisation du mot de passe
│ └── (tabs)/ # Écrans de l'app (authentifié)
│ ├── _layout.tsx # Navigateur à onglets : Accueil, Profil, Paramètres
│ ├── index.tsx # Onglet Accueil : crédits, plan, actions
│ ├── profile.tsx # Modifier nom, avatar, déconnexion
│ └── settings.tsx # Mot de passe, abonnement, suppression
├── convex/
│ ├── schema.ts # Schéma de base de données
│ ├── auth.ts # Configuration de l'authentification
│ └── functions/ # Fonctions serverless
├── lib/
│ └── auth.ts # Hook useSession + fonctions d'auth
├── components/ # Composants réutilisables
├── assets/ # Icônes, écran de démarrage
├── app.json # Configuration Expo
├── eas.json # Profils EAS Build
└── package.jsonPrêt ?
Direction Installation pour faire tourner votre app mobile en local.