Class_generator/DEPLOYMENT_GUIDE.md
StillHammer 8ebc0b2334 Add TTS service, deployment docs, and refactor game modules
- Add TTSService.js for text-to-speech functionality
- Add comprehensive deployment documentation (guides, checklists, diagnostics)
- Add new SBS content (chapters 8 & 9)
- Refactor 14 game modules for better maintainability (-947 lines)
- Enhance SettingsDebug.js with improved debugging capabilities
- Update configuration files and startup scripts

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-18 23:41:12 +08:00

338 lines
7.4 KiB
Markdown
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 🚀 Guide de Déploiement - Milieu Inconnu Windows 10
## 📋 Vue d'ensemble
Ce guide vous aide à déployer Class Generator sur **n'importe quel Windows 10**, même avec des restrictions de sécurité.
---
## ⚡ Démarrage Rapide (3 étapes)
### 1⃣ Vérifier le système
```batch
Double-cliquer sur: DIAGNOSTIC.bat
```
- ✅ Tout vert ? Passez à l'étape 2
- ⚠️ Warnings ? Continuez quand même
- ❌ Erreurs ? Lisez les solutions ci-dessous
### 2⃣ Démarrer l'application
```batch
Double-cliquer sur: START_PORTABLE_SAFE.bat
```
- Attendez "SUCCESS! Server is running"
- Le navigateur s'ouvre automatiquement
- Laissez la fenêtre ouverte
### 3⃣ Utiliser l'application
- Naviguez sur http://localhost:8080
- Appuyez sur n'importe quelle touche dans la console pour arrêter
---
## 🛠️ Résolution de Problèmes
### Problème 1: "Node.js won't run"
**Causes possibles:**
- ❌ Antivirus bloque node.exe
- ❌ Droits d'administrateur requis
- ❌ Visual C++ Runtime manquant
**Solutions (par ordre de priorité):**
```
Solution A: Débloquer l'antivirus
1. Ouvrir Windows Security
2. Protection contre virus et menaces
3. Gérer les paramètres
4. Exclusions → Ajouter une exclusion
5. Dossier → Sélectionner le dossier Class_generator complet
6. Redémarrer DIAGNOSTIC.bat
```
```
Solution B: Lancer en administrateur
1. Clic droit sur START_PORTABLE_SAFE.bat
2. "Exécuter en tant qu'administrateur"
3. Accepter l'UAC
```
```
Solution C: Installer Visual C++ Redistributable
1. Télécharger: https://aka.ms/vs/17/release/vc_redist.x64.exe
2. Installer
3. Redémarrer l'ordinateur
4. Relancer DIAGNOSTIC.bat
```
---
### Problème 2: "Port 8080 used by another program"
**Identifier le coupable:**
```batch
netstat -ano | findstr :8080
```
**Solutions:**
```
Solution A: Tuer le processus
1. Copier le PID affiché (dernière colonne)
2. Ouvrir Gestionnaire des tâches
3. Onglet "Détails"
4. Trouver le PID et terminer le processus
```
```
Solution B: Changer le port
1. Ouvrir server.js avec Notepad
2. Chercher: const PORT = 8080
3. Changer en: const PORT = 8081
4. Sauvegarder
5. Relancer START_PORTABLE_SAFE.bat
```
---
### Problème 3: "Dependencies installation failed"
**Causes possibles:**
- ❌ Pas d'internet
- ❌ Firewall/Proxy bloque npm
- ❌ Espace disque plein
**Solutions:**
```
Solution A: Déployer avec node_modules pré-installés
1. Sur votre machine de dev:
npm install
2. Copier TOUT le dossier (incluant node_modules/)
3. Sur la machine cible: skip étape d'installation
```
```
Solution B: Installation manuelle
1. Vérifier la connexion internet
2. Ouvrir cmd en administrateur
3. cd C:\chemin\vers\Class_generator
4. nodejs-portable\node.exe nodejs-portable\node_modules\npm\bin\npm-cli.js install
5. Observer les erreurs détaillées
```
---
### Problème 4: "Browser doesn't open" ou "Wrong browser opens"
**⚠️ CRITIQUE: Votre environnement nécessite Firefox UNIQUEMENT**
- ❌ Edge ne fonctionne PAS
- ❌ Chrome ne fonctionne PAS
- ✅ Firefox REQUIS
**Solutions:**
```
Solution A: Vérifier que Firefox est installé
1. Chercher dans Menu Démarrer: "Firefox"
2. Si absent → Demander à l'IT d'installer Firefox
3. Ou télécharger Firefox Portable si droits limités
Solution B: Ouvrir manuellement
1. Laisser le serveur tourner (ne pas fermer la fenêtre)
2. Ouvrir FIREFOX (PAS Edge, PAS Chrome)
3. Aller sur: http://localhost:8080
Solution C: Firefox dans un chemin non-standard
1. Noter où Firefox est installé
2. Le script cherche dans:
- C:\Program Files\Mozilla Firefox\
- C:\Program Files (x86)\Mozilla Firefox\
- PATH système
3. Si ailleurs, ouvrir manuellement (Solution B)
```
---
### Problème 5: "Server started but page doesn't load"
**Diagnostic:**
```batch
1. Ouvrir logs\server.log
2. Chercher les erreurs
```
**Erreurs courantes:**
```
ERREUR: "EADDRINUSE"
→ Le port est déjà pris, voir Problème 2
ERREUR: "MODULE_NOT_FOUND"
→ Dependencies manquantes, voir Problème 3
ERREUR: "Permission denied"
→ Lancer en administrateur, voir Problème 1 / Solution B
```
---
## 🎯 Checklist Pré-Déploiement
Avant de partir en milieu inconnu, **sur votre machine de dev** :
### Option A: Déploiement Léger (50 MB)
```
✅ nodejs-portable/ complet
✅ Tous les scripts .bat
✅ package.json
✅ src/, games/, styles/
✅ server.js, index.html
❌ node_modules/ (sera installé sur place)
```
### Option B: Déploiement Complet (150 MB)
```
✅ TOUT le dossier incluant node_modules/
→ Plus gros mais zéro dépendance internet
```
**Recommandation:** Option B pour milieu inconnu
---
## 📦 Package de Déploiement Recommandé
Créer un ZIP avec:
```
Class_generator/
├── START_PORTABLE_SAFE.bat ← Script principal
├── DIAGNOSTIC.bat ← Vérification système
├── DEPLOYMENT_GUIDE.md ← Ce fichier
├── nodejs-portable/ ← Node.js complet
├── node_modules/ ← (Optionnel mais recommandé)
├── src/
├── games/
├── styles/
├── server.js
├── index.html
└── package.json
```
---
## 🔒 Environnements Restrictifs
### Entreprise / École avec restrictions
**Stratégies:**
1. **Demander une exception IT**
- Fournir DIAGNOSTIC_REPORT.txt
- Expliquer: application locale, pas d'internet requis
- Montrer que c'est éducatif
2. **Mode super portable**
- Utiliser une clé USB
- Lancer depuis la clé (pas d'installation)
- Tout est contenu, rien sur le système
3. **Fallback ultime: Python SimpleHTTPServer**
```batch
python -m http.server 8080
```
(Si Python est autorisé mais pas Node.js)
---
## 🧪 Test Rapide en 30 Secondes
Sur la machine cible:
```batch
1. Double-clic DIAGNOSTIC.bat
⏱️ Attendre le résultat (10 sec)
2. Si OK → Double-clic START_PORTABLE_SAFE.bat
⏱️ Attendre "SUCCESS" (15 sec)
3. Navigateur s'ouvre automatiquement
⏱️ Page charge (5 sec)
✅ Total: ~30 secondes si tout va bien
```
---
## 📞 Support d'Urgence
Si rien ne marche:
1. **Capturer les logs**
- DIAGNOSTIC_REPORT.txt
- logs\server.log
- Screenshot des erreurs
2. **Informations système**
```batch
systeminfo > system_info.txt
```
3. **Envoyer à l'IT/développeur**
---
## ✅ Vérification Finale
Avant de dire "c'est bon":
```
✅ DIAGNOSTIC.bat → Tout vert ou warnings acceptables
✅ START_PORTABLE_SAFE.bat → "SUCCESS! Server is running"
✅ http://localhost:8080 → Page charge
✅ Tester une fonctionnalité → Ça marche
✅ Arrêter (touche dans console) → Propre
✅ Redémarrer → Ça remarche
```
---
## 🎓 Notes pour l'Utilisateur Final
```
Ce logiciel fonctionne LOCALEMENT sur votre ordinateur.
Il ne se connecte PAS à internet.
Vos données restent sur votre machine.
Aucune installation système requise.
Tout est dans ce dossier.
⚠️ IMPORTANT: Utilisez UNIQUEMENT Mozilla Firefox
Edge et Chrome ne sont PAS compatibles avec ce système.
```
---
## 🦊 Firefox Portable (Plan de Secours)
Si Firefox n'est pas installé et que vous n'avez pas les droits d'installer :
```
1. Télécharger Firefox Portable depuis:
https://portableapps.com/apps/internet/firefox_portable
2. Extraire dans un dossier (ex: Desktop/FirefoxPortable/)
3. Lancer FirefoxPortable.exe
4. Aller sur: http://localhost:8080
```
---
**Version:** 1.1
**Testé sur:** Windows 10 (build 19041+)
**Navigateur:** Firefox uniquement
**Dernière mise à jour:** 2025-10-18