Interface web moderne et complète pour gérer votre serveur Hytale via Docker
Ce projet a été développé par Claude AI (Anthropic), démontrant les capacités de l'IA pour créer des applications full-stack complètes et fonctionnelles.
- ✅ Démarrer/Arrêter/Redémarrer le serveur
- ✅ Monitoring temps réel (CPU, RAM, Uptime)
- ✅ Version Hytale affichée
- ✅ Statut détaillé (container, serveur, PID)
- ✅ Liste des joueurs connectés en temps réel
- ✅ Actions admin : Op, Kick, Ban, Pardon, Deop
- ✅ Détection connexion/déconnexion automatique
- ✅ Commandes via named pipe
- ✅ Logs en temps réel via WebSocket
- ✅ Exécution de commandes
/ - ✅ Historique des commandes
- ✅ Auto-scroll et recherche
- ✅ Intégration hytale-downloader officiel
- ✅ Authentification OAuth device flow
- ✅ Popup interactive pour OAuth
- ✅ Réutilisation intelligente des tokens
- ✅ Workflow entièrement automatisé
- ✅ Liste des mods installés avec métadonnées (nom, taille, date, statut)
- ✅ Upload de mods via interface web (.jar uniquement, 50MB max)
- ✅ Activation/Désactivation sans suppression
- ✅ Suppression de mods avec confirmation
- ✅ Intégration CurseForge (liens directs)
- ✅ Scan automatique du dossier
/data/mods/ - ✅ Interface intuitive avec drag & drop
- Docker et Docker Compose installés
- Un serveur Hytale basé sur enesbakis/hytale-docker
- Minimum 4GB de RAM (8GB recommandés)
- Ports disponibles :
3000(interface web)4000(API backend)5520/UDP(serveur Hytale)
git clone https://github.com/mathgen44/hytale-web-manager.git
cd hytale-web-managercp .env.example .env
# Éditer .env si nécessairedocker compose up -dOuvrez votre navigateur : http://localhost:3000
hytale-web-manager/
├── backend/ # API Node.js + Express
│ ├── src/
│ │ ├── routes/
│ │ │ ├── server.js # Contrôle serveur
│ │ │ ├── players.js # Gestion joueurs
│ │ │ ├── commands.js # Commandes
│ │ │ └── mods.js # 🆕 Gestion mods
│ │ ├── services/
│ │ │ ├── docker.js # Docker API
│ │ │ ├── players.js # Logique joueurs
│ │ │ └── mods.js # 🆕 Logique mods
│ │ └── websocket/
│ │ └── logs-stream.js # Stream logs
│ └── package.json # 🆕 + multer
│
├── frontend/ # Interface React
│ ├── src/
│ │ ├── App.jsx # 🆕 + Section Mods
│ │ └── main.jsx
│ └── package.json
│
├── hytale-server-wrapper/ # Scripts de contrôle
│ ├── wrapper.sh # Named pipe
│ ├── control-server.sh
│ ├── send-command.sh
│ └── update-server.sh
│
├── data/ # Données serveur
│ ├── mods/ # 🆕 Dossier mods
│ ├── universe/ # Monde
│ ├── auth.enc # Token OAuth
│ └── config.json
│
└── docker-compose.yml
- Téléchargez un mod depuis CurseForge
- Dans l'interface web, section "Gestionnaire de Mods"
- Cliquez sur "Choisir un fichier" et sélectionnez le
.jar - Cliquez sur "Upload"
- Redémarrez le serveur pour charger le mod
- Cliquez sur le bouton "Activer" ou "Désactiver"
- Le fichier est renommé en
.jar.disabled(ou inversement) - Redémarrez le serveur pour appliquer les changements
- Cliquez sur le bouton "Supprimer" (icône poubelle)
- Confirmez la suppression
- Le fichier est supprimé du dossier
/data/mods/
- Bouton "CurseForge" (header) : Ouvre le catalogue complet
- Icône "External Link" (par mod) : Recherche le mod sur CurseForge
Actions disponibles pour chaque joueur :
- OP : Promouvoir en opérateur
- Kick : Expulser temporairement
- Ban : Bannir définitivement
- Pardon : Débannir un joueur
- Deop : Retirer les privilèges
Commandes courantes :
/list # Liste des joueurs
/time set day # Changer l'heure
/gamemode creative PlayerName # Mode créatif
/tp PlayerName x y z # Téléporter
/say Message # Message serveur
/whitelist add PlayerName # Whitelist- Cliquez sur "Mettre à jour" dans l'interface
- Si OAuth requis : cliquez sur le lien dans la popup
- Authentifiez-vous
- Le serveur se met à jour automatiquement
GET /api/server/status # Statut serveur
GET /api/server/stats # Statistiques CPU/RAM
GET /api/server/version # Version Hytale
POST /api/server/start # Démarrer
POST /api/server/stop # Arrêter
POST /api/server/restart # Redémarrer
POST /api/server/update # Mettre à jour
GET /api/server/oauth-url # URL OAuth
GET /api/players # Liste joueurs
POST /api/players/:name/kick # Kick
POST /api/players/:name/ban # Ban
POST /api/players/:name/pardon # Pardon
POST /api/players/:name/op # Promouvoir OP
POST /api/players/:name/deop # Retirer OP
GET /api/mods # Liste mods
POST /api/mods/upload # Upload mod
POST /api/mods/:filename/enable # Activer
POST /api/mods/:filename/disable # Désactiver
DELETE /api/mods/:filename # Supprimer
GET /api/mods/:filename/status # Vérifier chargement
POST /api/mods/scan # Scan forcé
WS /ws/logs # Stream logs
make start # Démarrer
make stop # Arrêter
make restart # Redémarrer
make logs # Voir logs
make logs-server # Logs serveur Hytale
make build # Rebuild images
make health # Vérifier santé
make info # Infos projetdocker compose up -d # Démarrer
docker compose down # Arrêter
docker compose logs -f # Logs
docker compose restart hytale-server # Redémarrer serveur
docker compose build --no-cache # Rebuild- ✅ Extension : uniquement
.jar - ✅ Taille max : 50MB
- ✅ Vérification existence avant upload
- ✅ Pas d'exécution automatique
-
Source des mods :
- Télécharger uniquement depuis CurseForge
- Vérifier compatibilité version Hytale
- Lire descriptions et dépendances
-
Gestion :
- Faire un backup avant ajout de mods
- Tester les mods un par un
- Redémarrer après changements
-
Résolution problèmes :
- Vérifier logs après ajout
- Si crash : désactiver dernier mod ajouté
- Consulter CurseForge pour issues connues
docker compose logs hytale-server | tail -100
ls -la data/HytaleServer.jar
sudo chown -R 1000:1000 data/# Vérifier présence des mods
docker exec hytale-server ls -la /data/mods/
# Vérifier logs de chargement
docker compose logs hytale-server | grep -i "mod\|plugin"
# Redémarrer le serveur
docker compose restart hytale-server# Vérifier taille du fichier (max 50MB)
ls -lh /chemin/vers/mod.jar
# Vérifier extension
file /chemin/vers/mod.jar
# → doit être "Java archive data"
# Vérifier logs backend
docker compose logs backend | tail -50- Guide complet mods Hytale
- Installation mods (officiel)
- CurseForge Hytale
- Documentation complète
- Guide migration
- Guide contribution
Les contributions sont les bienvenues ! Consultez CONTRIBUTING.md.
Ce projet est sous licence MIT. Voir LICENSE.
- Claude AI (Anthropic) - Développement principal
- enesbakis/hytale-docker - Image Docker de base
- CurseForge - Plateforme de mods
- La communauté Hytale - Tests et retours
Ce qui a été ajouté :
- ✅ Interface complète de gestion des mods
- ✅ Upload via interface web
- ✅ Activation/Désactivation sans suppression
- ✅ Intégration CurseForge
- ✅ Scan automatique du dossier mods
- ✅ API REST complète pour CRUD mods
Comment l'utiliser :
- Téléchargez des mods depuis CurseForge
- Uploadez-les via l'interface (section "Gestionnaire de Mods")
- Activez/Désactivez selon vos besoins
- Redémarrez le serveur pour appliquer
Avantages :
- Plus besoin de SSH/FTP
- Gestion visuelle intuitive
- Test facile (enable/disable)
- Liens directs vers CurseForge
Développé avec ❤️ par Claude AI pour la communauté Hytale