Sommaire de la documentation
Compiler Mistly
Compiler le launcher, lancer ses tests, publier une release et s'y retrouver dans le code.
Mistly est open source, sous licence MIT. Le code est sur GitHub ; le projet Rust est dans le dossier misty-rust.
Prérequis
- Windows 10 ou 11.
- Rust (toolchain stable, cible MSVC) avec les outils de build C++ de Visual Studio.
Clé API CurseForge
L'API CurseForge exige une clé personnelle, gratuite sur console.curseforge.com. Elle doit rester privée :
- Colle-la dans
misty-rust/curseforge.key(fichier ignoré par git). - Recompile : la clé est intégrée à l'exe au build.
Autre possibilité : la variable d'environnement MISTY_CURSEFORGE_KEY. Sans clé, l'onglet CurseForge explique comment la configurer ; Modrinth fonctionne normalement.
Compiler et lancer
cd misty-rust
cargo run # version de développement
cargo build --release # exe final : target\release\Misty.exe
Tests
Les tests utilisent Internet et ton dossier Mistly, mais ne lancent jamais le jeu :
cargo test -- --ignored --nocapture
Publier une release
-
Mets à jour
VERSIONdansmisty-rust/src/services/app_info.rsetversiondansmisty-rust/Cargo.toml, puis ajoute l'entrée dansCHANGELOG.md(il est intégré à l'exe et affiché dans la page Notes de version). -
Lance le script de release (il faut Inno Setup 6 :
winget install JRSoftware.InnoSetup) :powershell -ExecutionPolicy Bypass -File installer\build.ps1Il produit dans
publish\: le dossierMisty-<version>, l'archiveMisty-<version>.zip(utilisée par la mise à jour automatique) et l'installeurMisty-Setup-<version>.exe.-SansInstallateurne génère que le dossier et le zip. -
Crée une release GitHub avec le tag
<version>et joins-y le zip et l'installeur.
VERSION, le tag GitHub (sans lev) et le nom du dossierMisty-<version>doivent être identiques. Sinon le launcher reproposera la mise à jour en boucle.
S'y retrouver
| Dossier | Rôle |
|---|---|
misty-rust/ui/ | L'interface Slint : thème, composants et un fichier par page |
misty-rust/src/ui/ | Le code derrière chaque page |
misty-rust/src/minecraft/ | Installation et lancement du jeu : versions, Java, mod loaders |
misty-rust/src/services/ | La logique : réglages, comptes, profils, contenu, clients Modrinth et CurseForge, mises à jour… |
misty-rust/lang/ | Traductions (en.json, fr.json, es.json, it.json, ru.json), intégrées à l'exe |
installer/ | Script de release et installeur Inno Setup |
Contribuer
Les signalements de bugs et les pull requests sont les bienvenus sur GitHub. Pour améliorer cette documentation, utilise le lien Modifier cette page sur GitHub en bas de chaque page : la doc se trouve dans le dépôt Misty-Web, dans docs/<langue>/.