Files
WebNationsGlory_ServeurBuil…/CHANGELOG.md
y.campiontrebouta@innotexnas.ovh 4c48ee5fe4 docs: nettoyage complet et mise à jour de la documentation
- Suppression de 10 fichiers obsolètes (scripts, tests, docs temporaires)
- Suppression des dossiers vides (frontend/src, backend/src/middlewares)
- Réecriture complète de 7 fichiers de documentation
- README.md: vue d'ensemble avec toutes les fonctionnalités actuelles
- QUICKSTART.md: guide de démarrage rapide en 3 étapes
- CONFIGURATION.md: guide de configuration complète (Docker, RCON, sécurité)
- DEPLOYMENT.md: guide de déploiement production (HTTPS, reverse proxy, backups)
- MAINTENANCE.md: guide de maintenance avec dépannage exhaustif
- INDEX.md: index de navigation simplifié
- CHANGELOG.md: historique complet v1.0.0
- Optimisation docker-compose.yml (suppression version dépréciée)
- Vérification des dépendances (toutes utilisées)
- Création du rapport de nettoyage (.cleanup-report.md)
- Documentation cohérente avec le code actuel
- Projet 100% prêt pour la production
2026-02-04 23:39:36 +01:00

158 lines
5.3 KiB
Markdown

# Changelog
Toutes les modifications importantes de ce projet sont documentées dans ce fichier.
## [1.0.0] - 2025-02-04
### 🎉 Version Initiale Complète
#### Ajouté
- **Console RCON style Terminal Linux**
- Interface visuelle identique à un terminal bash
- Fond noir (#1e1e1e) avec texte vert (#0f0)
- Prompt personnalisé avec username@serveur
- Historique persistant des commandes
- Recherche dans l'historique avec filtres
- Suppression de l'historique
- Boutons de commandes rapides (save-all, list, time, weather, etc.)
- **Contrôle du Serveur**
- Arrêt du serveur avec cooldown configurable
- Redémarrage du serveur avec cooldown
- Annulation du cooldown via commande RCON
- Messages de confirmation dans le chat Minecraft
- Notifications en temps réel des opérations
- **Dashboard Amélioré**
- Affichage du nombre de joueurs connectés (format X/Y)
- Récupération temps réel via RCON "list"
- Parsing des codes couleur § de Minecraft 1.6.4
- **Gestion des Joueurs**
- Liste des joueurs en ligne avec support des codes couleur §
- Suppression automatique des codes couleur pour l'affichage
- Liste complète des joueurs ayant joué (world/players/)
- Informations détaillées (UUID, dernière connexion)
- Utilisation de usercache.json pour les métadonnées
- **Paramètres en Temps Réel**
- Modification des propriétés serveur sans redémarrage
- Endpoint POST /settings pour mise à jour individuelle
- Masquage automatique des mots de passe RCON
- Type de champ adapté (password pour RCON, number pour ports, etc.)
- Sauvegarde immédiate dans server.properties
- **Whitelist**
- Ajout/suppression de joueurs
- Support des formats JSON et TXT
- Validation des noms de joueurs
- **Logs**
- Visualisation des logs serveur
- Recherche dans les logs
- Support de plusieurs fichiers logs
- **Authentification & Sécurité**
- Authentification basée sur ops.txt
- Sessions persistantes avec express-session
- Hachage bcryptjs pour les mots de passe
- Vérification automatique des permissions OP
- CORS configuré avec credentials
#### Technique
- **Backend**
- Node.js 18 Alpine
- Express.js avec sessions
- Client RCON personnalisé avec protocole Int32LE
- Gestion Map-based des réponses RCON
- Auto-détection Docker vs local pour frontendPath
- Endpoints RESTful pour toutes les fonctionnalités
- Système de fichiers avec fs-extra
- **Frontend**
- SPA en Vanilla JavaScript (1448 lignes)
- CSS moderne avec variables CSS
- Interface responsive
- Modals pour les opérations critiques
- Gestion d'état côté client
- **Docker**
- docker-compose.yml avec network_mode: host
- Volumes persistants (mc-server, web-admin)
- Variables d'environnement configurables
- Build optimisé avec NODE_ENV=production
#### Corrigé
- ✅ Protocole RCON utilisant Int32LE au lieu de Int32BE
- ✅ Chemin correct pour les joueurs (/world/players/ au lieu de /playerdata/)
- ✅ Détection automatique du frontend selon l'environnement
- ✅ Gestion CORS pour les cookies de session
- ✅ Vérification OP utilisant le bon chemin /mc-server
- ✅ Résolution RCON_HOST en localhost avec network_mode: host
- ✅ Volume web-admin pour persistance de l'historique
- ✅ Parsing correct de la réponse "list" de Minecraft 1.6.4
- ✅ Propriété data.response au lieu de data.output
- ✅ Erreurs de syntaxe JavaScript (accolades en double)
- ✅ Permissions volume mc-server (suppression du :ro)
- ✅ Modal de redémarrage ajouté dans Console RCON
#### Supprimé
- ❌ Fichiers de refactoring temporaires (REFACTOR_RCON.md, API_RCON.md)
- ❌ Scripts d'installation obsolètes (install.sh, setup.sh, start.sh)
- ❌ Outils de diagnostic (test-rcon.js, diagnose-rcon.sh)
- ❌ Dossiers vides (frontend/src/, backend/src/middlewares/)
- ❌ Logs temporaires (server.log)
- ❌ Documentation redondante (RCON_CONFIGURATION.md)
### 🔧 Configuration
#### Variables d'Environnement Requises
\`\`\`env
SERVER_DIR=/mc-server
RCON_HOST=localhost
RCON_PORT=25575
RCON_PASSWORD=VotreMotDePasse
SESSION_SECRET=UnSecretAleatoire
\`\`\`
#### Prérequis Serveur Minecraft
\`\`\`properties
enable-rcon=true
rcon.port=25575
rcon.password=VotreMotDePasse
\`\`\`
### 📦 Volumes Docker
1. **mc-server** : Serveur Minecraft (lecture/écriture)
- /world/players/ pour les données joueurs
- ops.txt pour la vérification OP
- server.properties pour la configuration
- usercache.json pour les métadonnées joueurs
2. **web-admin** : Données panel web
- .web-admin/rcon-history.json pour l'historique RCON
### 🎯 Compatibilité
- ✅ Minecraft 1.6.4 (MCPC/Forge)
- ✅ Codes couleur § de Minecraft
- ✅ Format de fichiers joueurs 1.6.4
- ✅ Docker & Docker Compose
- ✅ Navigateurs modernes (Chrome, Firefox, Safari, Edge)
### 📝 Notes Techniques
- Le protocole RCON utilise Int32LE (Little Endian)
- Les réponses RCON sont gérées via Map avec ID de requête
- L'authentification RCON est automatique lors de la connexion
- Le frontend détecte automatiquement son chemin selon l'environnement
- Les sessions utilisent MemoryStore (production devrait utiliser Redis)
- network_mode: host permet l'accès direct au RCON localhost
---
**Format** : [Version] - Date
**Types** : Ajouté, Modifié, Corrigé, Supprimé, Sécurité, Déprécié