# mc-launcher-rs A simple minecraft launcher, in Rust ## Goal The goal of this project is for me to learn a little bit of Rust, and experiment with the ecosystem. The current scope of the project is just downloading minecraft and launching it. Maybe modloader after all is stable-ish ## Stack // Todo, link | Usage | Choice | | -------- | ----------- | | UI | egui | | Async | tokio | | HTTP | reqwest | | JSON | serde | | Hashing | sha1 | | Archives | zip | | Folders | directories | | Errors | anyhow | | Logs | tracing | ## Roadmap Do the download logic, then the UI. Download: [x] Read the manifest [x] Manifest -> JSON [] Interpret the data [] Download from the JSON -> HTTP/Tokio [] Go from sequential to parallel ## Structure `core` -> all the launcher stuff, version manifest, JSON, download, hashes, launch args... `cli` -> a small wrapper that calls the core and display text `gui` -> another small wrapper that calls the core and displays it with `egui` ## Links https://piston-meta.mojang.com/mc/game/version_manifest_v2.json This one is the main manifest