- Plan_Oral_CESIZen.md : déroulé 20 min avec créneau démo live (8:30-12:30), timing recalé, chiffrement honnête, +25 tests, Q15/Q16 (démo, tests) - Guide_Lancement_CESIZen.md : lancer web/API (Docker), mobile (Expo), comptes de démo, parcours, arrêt/relance, dépannage Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
5.8 KiB
🚀 Guide de lancement CESIZen — web, API, mobile & démo
Tout se lance en une commande pour la partie web/API (Docker). Le mobile se lance à part (Expo).
0. Prérequis (à vérifier une fois)
- Docker Desktop installé et lancé (l'icône baleine doit être active dans la barre de menu).
- Pour le mobile uniquement : Node.js (déjà installé : v22) et l'app Expo Go sur ton téléphone (App Store / Play Store).
- Se placer dans le dossier du projet :
cd ~/Desktop/CESI/Cesizen
1. 🌐 Lancer le site web + l'API + la base (Docker)
Une seule commande construit et démarre tout (PostgreSQL + Redis + API Laravel + front Next.js), applique les migrations et le seed (dont le compte de démo) :
docker compose up -d
-d= en arrière-plan (tu récupères ton terminal).- Le premier lancement build les images (quelques minutes). Les suivants démarrent en ~20 s.
Vérifier que c'est prêt :
docker compose ps # les 4 services doivent être "Up" / "healthy"
Adresses une fois lancé :
| Service | URL |
|---|---|
| 🖥️ Site web | http://localhost:3000 |
| 🔌 API (REST JSON) | http://localhost:8000/api/v1 |
| 🗄️ PostgreSQL | localhost:5432 (db cesizen / user cesizen) |
➡️ Ouvre http://localhost:3000 dans ton navigateur.
2. 🔑 Comptes de démonstration (déjà créés par le seed)
| Rôle | Mot de passe | Pour montrer… | |
|---|---|---|---|
| Membre (démo) | demo@cesizen.fr |
Demo123! |
Le Tracker : journal déjà rempli (18 saisies) + rapports parlants |
| Admin | admin@cesizen.fr |
Admin123! |
Le back-office : gestion users / contenus / émotions |
💡 Pour la démo de soutenance, connecte-toi avec
demo@cesizen.fr: son journal et ses rapports sont déjà fournis (camembert + courbe), pas besoin de saisir en direct.
3. 🎬 Le parcours de démo (≈ 4 min, sur le web)
Connecté en demo@cesizen.fr, déroule dans cet ordre :
- Informations (accessible même sans compte) → « voici le module Informations »
- Journal de bord → l'historique des saisies (déjà rempli)
- Nouvelle saisie → wizard 3 étapes : émotion → sous-émotion + intensité (slider) → date + note → Valider (elle apparaît dans le journal)
- Rapports → changer la période (Semaine / Mois / …) → camembert de répartition + courbe d'évolution
- (option) Connecté en admin, montrer la configuration des émotions
🛟 Si la démo plante : bascule sur les maquettes des slides (slide 9), sans t'excuser.
4. 📱 Lancer l'application mobile (Expo)
La partie Docker (API) doit déjà tourner (étape 1), car l'app mobile interroge l'API.
cd ~/Desktop/CESI/Cesizen/mobile
npm install # la première fois seulement
npx expo start # démarre le serveur Expo + affiche un QR code
Ensuite, 3 façons de voir l'app :
a) Sur ton téléphone (le plus simple pour une démo)
- Téléphone et Mac sur le même WiFi.
- L'app doit pointer vers l'API via l'IP locale du Mac (pas
localhost, qui désigne le téléphone). Lance plutôt :(192.168.1.127 = IP actuelle de ton Mac. Si elle change, retrouve-la avecEXPO_PUBLIC_API_URL=http://192.168.1.127:8000/api/v1 npx expo startipconfig getifaddr en0.) - Ouvre Expo Go sur le téléphone → scanne le QR code affiché dans le terminal.
b) Sur simulateur iOS (Mac avec Xcode)
- Dans le terminal Expo, appuie sur
i→ l'app s'ouvre dans le simulateur. (Icilocalhostfonctionne tel quel.)
c) Sur émulateur Android (Android Studio)
- Appuie sur
a. (L'app utilise automatiquement10.0.2.2pour joindre l'API du Mac.)
Pour la soutenance, le plus fiable est de montrer le web (projeté) et d'évoquer le mobile avec 1-2 écrans (téléphone ou simulateur). Une double démo live = double risque.
5. ⏹️ Arrêter / relancer
docker compose down # arrête tout (les données de démo sont CONSERVÉES)
docker compose up -d # relance (le compte démo + les 18 saisies reviennent)
- ⚠️ Ne jamais faire
docker compose down -v: le-vefface la base (tu perdrais les données de démo). Sans-v, tout est conservé dans le volume. - Mobile :
Ctrl + Cdans le terminal Expo pour l'arrêter.
6. 🧪 Lancer les tests (si on te le demande)
# API (Laravel) — 15 tests
docker compose exec backend php artisan test
# ou en local : cd backend && php artisan test
# Web (Next.js) — 6 tests
cd frontend && npm test
# Mobile (Expo) — 4 tests
cd mobile && npm test
7. 🆘 Dépannage rapide
| Problème | Solution |
|---|---|
Cannot connect to the Docker daemon |
Docker Desktop n'est pas lancé → ouvre-le, attends que la baleine soit active. |
Port 3000/8000 déjà utilisé |
Une appli occupe le port. Ferme-la, ou : lsof -nP -iTCP:3000 -sTCP:LISTEN pour l'identifier. |
| Le site charge mais « erreur réseau » | L'API n'est pas prête → docker compose ps (backend doit être Up) ; relance docker compose up -d. |
| Le mobile n'atteint pas l'API | Mauvaise URL → utilise EXPO_PUBLIC_API_URL=http://<IP_du_Mac>:8000/api/v1 (étape 4a). |
| Repartir d'une base propre | docker compose down -v && docker compose up -d (⚠️ efface puis recrée tout, démo comprise). |
✅ Checklist « 5 min avant l'oral »
- Docker Desktop lancé
docker compose up -dexécuté ·docker compose ps= tout Up- Navigateur ouvert sur http://localhost:3000, déjà connecté en
demo@cesizen.fr - Page Journal de bord affichée, zoom à 125 %, notifications coupées
- Slides ouvertes en second (
.pptx+ un export PDF de secours)