Ajouter un module
This content is not available in your language yet.
Un module est une fonctionnalité optionnelle complète : provider, écrans, migrations, edge functions, textes, configuration validée par zod. Rien n’est importé tant qu’il n’est pas activé.
1. Activer
Section intitulée « 1. Activer »bun daroms module list # modules disponibles et actifsbun daroms module add paymentsmodule add ajoute les modules requis (requires), les routes, les migrations, les edge functions, les variables de .env.example, les textes d’app, la configuration par défaut dans app.manifest.ts > modules, régénère le registre src/generated/modules.ts et installe les dépendances natives (expo install). --no-install saute l’installation.
2. Configurer
Section intitulée « 2. Configurer »La configuration vit dans le manifest et est validée au démarrage par core/modules/<slug>/config.ts :
modules: { auth: { providers: ['email', 'apple'], requireAuth: true }, payments: { entitlement: 'pro', mode: 'soft' },},Chaque page module liste ses clés, schémas et valeurs par défaut :
| Module | Rôle | Étape hors code |
|---|---|---|
| auth | e-mail, Apple, Google, profil, suppression de compte | fournisseurs dans Supabase Auth, <scheme>://** en URL de redirection, functions deploy delete-account |
| onboarding | pages d’accueil au premier lancement | - |
| settings | onglet Réglages (apparence, langue, haptique, sections des modules) | - |
| payments | paywall RevenueCat, statut Pro | clés publiques RevenueCat dans .env, entitlement et offering |
| push | notifications Expo, jeton par utilisateur | build de dev, projet EAS, functions deploy send-push |
| analytics | événements par lots dans Supabase | - |
| ai-chat | chat Claude en streaming | bunx supabase secrets set ANTHROPIC_API_KEY=..., functions deploy ai-chat |
| camera | photos vers Supabase Storage, PhotoPicker |
- |
| maps | carte, marqueurs, position, distances | GOOGLE_MAPS_ANDROID_API_KEY pour les builds Android |
3. Appliquer la base
Section intitulée « 3. Appliquer la base »Si le module a des migrations : bun daroms db push. Edge functions : bunx supabase functions deploy <fonction>.
4. Modules natifs hors Expo Go
Section intitulée « 4. Modules natifs hors Expo Go »payments (achats réels) et push ont besoin d’un build de développement :
bun daroms build developmentbun daroms dev --dev-clientbun daroms module remove paymentsLes migrations déjà appliquées restent dans la base.
Avec Claude
Section intitulée « Avec Claude »/daroms-module payments active le module, règle le manifest selon app.spec.md, branche les écrans (ex. <ProGate>, router.push('/paywall')) et liste les étapes manuelles restantes.
Créer un nouveau module dans le cœur : Développer le cœur.