Skip to content

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é.

Fenêtre de terminal
bun daroms module list # modules disponibles et actifs
bun daroms module add payments

module 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.

La configuration vit dans le manifest et est validée au démarrage par core/modules/<slug>/config.ts :

app.manifest.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

Si le module a des migrations : bun daroms db push. Edge functions : bunx supabase functions deploy <fonction>.

payments (achats réels) et push ont besoin d’un build de développement :

Fenêtre de terminal
bun daroms build development
bun daroms dev --dev-client
Fenêtre de terminal
bun daroms module remove payments

Les migrations déjà appliquées restent dans la base.

/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.