Use this command to install mcl-launcher with WinGet:
winget install --id=Objz.MclLauncher -e
mcl-launcher is a terminal-based Minecraft launcher designed to provide users with a lightweight, efficient, and customizable way to manage their game experience. Built for those who prefer command-line interfaces or want to streamline their workflow, mcl-launcher offers a modern take on Minecraft launchers.
Key Features:
Terminal User Interface (TUI): Navigate and interact with the launcher directly from your terminal, making it easy to manage instances, mods, and game settings without leaving the command line.
Multiple Instances: Create and switch between multiple Minecraft instances, each configured with different versions, mod loaders, and settings.
Mod Loader Support: Works seamlessly with popular mod loaders like Fabric, Quilt, Forge, NeoForge, and more, enabling users to customize their gameplay extensively.
Content Management: Browse, toggle, and manage mods, shaders, resource packs, worlds, and screenshots directly within the interface.
Command-Line Automation: Use CLI commands for scripting and automation, allowing users to integrate mcl-launcher into their existing workflows.
Microsoft Account Authentication: Supports Microsoft account login for a seamless connection to your Minecraft profile.
Audience & Benefit:
Ideal for Minecraft players seeking a more efficient and flexible way to manage their game experience. Users who value customization, automation, and minimal resource usage will benefit from mcl-launcher's streamlined design and robust feature set. It allows users to save time by managing everything from the terminal without relying on bulky graphical interfaces.
mcl-launcher can be installed via winget for Windows users.
README
rmcl
Rusty MineCraft Launcher. or Rust MineCraft cLi. pick whichever sounds better to you.
we all love TUIs. and we all know the official Minecraft launcher is not exactly a joy to use (performance wise; no hatespeech here). so here's rmcl, a fully featured Minecraft launcher that lives in your terminal. written in Rust.
it does everything you'd expect from a launcher.
features
Mod Loader
Supported
Vanilla
✅
Fabric
✅
Forge
✅
NeoForge
✅
Quilt
✅
LiteLoader
❌
Rift
❌
modpacks and accounts
Browse Modrinth and CurseForge modpacks or import Modrinth, CurseForge, MultiMC, Prism, and GTNH packs directly. Direct imports accept a file, Modrinth URL, or project slug. Source builds enable CurseForge when CURSEFORGE_API_KEY is set at compile time. Able to use multiple Microsoft accounts and offline accounts aswell.
each instance has an instance.json for its config and a .minecraft/ directory with the actual game files.
logs
launcher logs are per-session and contain rmcl's own output. instance launch logs capture game stdout/stderr per launch.
what
Linux
macOS
Windows
launcher logs
~/.cache/rmcl/
~/Library/Caches/rmcl/
%LOCALAPPDATA%\rmcl\
instance launch logs
//.minecraft/logs/launches/
same
same
performance
the following measurements were taken from a release build on a Linux development system. they are intended as a practical reference, since terminal, window size, content count, and hardware all affect the result.
idle instance list
over a 60 second sample, the instance list used 497.81 ms of CPU time. that is about 0.83% of one CPU core. resident memory was 15.1 MiB.
idle mods list
with a populated mods list and its icons loaded, a 60 second sample used 664.77 ms of CPU time. that is about 1.11% of one CPU core. resident memory was 67.2 MiB, with a peak of 69.9 MiB.
scrolling mods list
continuously scrolling through the populated mods list used 1000.02 ms of CPU time over 30 seconds. that is about 3.33% of one CPU core.
In comparison, the Modrinth AppImage used approximately 14-30% of a CPU core and about 327 Mib of memory while browsing the mod list.
drop a TOML file in ~/.config/rmcl/theme/ and reference it by name, or point theme at an absolute path. keys are flat and top level, don't nest them under [theme]. only name, id and accent are required, the rest falls back to a default:
colors accept "#f97316", ANSI names ("Red", "LightBlue"), { Rgb = [r, g, b] } or { Indexed = n }.
note that [custom] in theme.toml is only for overriding single values of a builtin, it doesn't define a new theme. same for border_style, that one lives in theme.toml, not in a theme file.
contributing
contributions are welcome. fork it, branch it, PR it. see CONTRIBUTING.md