# Guide de Maintenance et Déploiement (Admin) ## 1. Architecture Monorepo Le projet utilise **npm workspaces**. - Racine : Dépendances partagées, Prisma Schema, Dossier `/app` (Front). - `/admin` : Application Next.js dédiée à l'administration. ## 2. Commandes Utiles À exécuter depuis la racine du projet : - `npm run dev:admin` : Lancer l'admin en développement. - `npm run build:admin` : Builder l'admin pour la production. - `npx prisma db push` : Synchroniser le schéma Prisma avec la base de données. - `npx prisma generate` : Régénérer le client Prisma. ## 3. Déploiement sur Dokploy ### Configuration de l'application Admin : - **Build Command** : `npm run build:admin` - **Start Command** : `npm run start:admin` - **Install Command** : `npm install --legacy-peer-deps` (à la racine) ### Variables d'environnement critiques : - `DATABASE_URL` : Connexion PostgreSQL. - `CRON_SECRET` : Clé pour sécuriser le nettoyage des comptes. - `SMTP_HOST`, `SMTP_USER`, `SMTP_PASS` : Configuration pour l'envoi d'emails. - `NEXT_PUBLIC_APP_URL` : URL du site front-end (pour les liens de réactivation). ## 4. Configuration des Tâches Cron Pour automatiser la suppression définitive des comptes : 1. Dans Dokploy, créez une tâche Cron pour l'application Admin. 2. Planification : `0 0 * * *` (tous les jours à minuit). 3. Commande : `curl -X GET "https://votre-admin.com/api/cron/cleanup-users?key=VOTRE_SECRET"` ## 5. Gestion de la Base de Données Le schéma Prisma se trouve à la racine : `/prisma/schema.prisma`. Toute modification du schéma doit être suivie d'un `npx prisma db push` et d'un redémarrage des serveurs pour que le client Prisma soit mis à jour.