Open-source project
HMCL-dev/HMCL avatar
HMCL-dev/HMCL

HMCL: a cross-platform Minecraft launcher with its own boot layer

A Minecraft Launcher which is multi-functional, cross-platform and popular

10,984 stars1,292 forksJavaGPL-3.0

At a glance

What is it?
HMCL is a GPL-3.0 Minecraft launcher written in Java, split into HMCL, HMCLCore and HMCLBoot modules. It is a reasonable choice for players on Linux, FreeBSD or unusual CPU architectures, and a poor one for anyone who wants the launcher to be nothing but a thin launcher.
Who is it for?
Adopt HMCL if you play Minecraft on Linux, FreeBSD, ARM or RISC-V hardware and want mod, ModLoader and modpack management in one launcher. Do not adopt it if you need a launcher you can rebrand and ship closed: the GPL-3.0 terms carry additional Section 7 conditions requiring a changed name or version number on modified distributions and the retention of the copyright notice.
Can I use it commercially?
Yes, with conditions. GPL-3.0 is a copyleft licence: if you distribute software that includes it, you must release that software's source code under the same licence. Running it internally without distributing it does not trigger that obligation.
Is it still maintained?
Yes. The repository received new commits within the last day.
What is it written in?
Mainly Java, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on November 14, 2026, and from our analysis. They are not legal advice.

From daily snapshots

Star history

  • HMCL-dev/HMCL10,984 ★ · +880
Star history
Repository2026-09-222026-11-14
HMCL-dev/HMCL10.1k11k

880 Stars in the last 53 days, measured from the daily GitHub snapshot. Compare with other projects

Editorial analysis

The problem HMCL solves is platform, not launching

Launching Minecraft is not hard. Doing it on FreeBSD, on an ARM board, or on a RISC-V machine is. The README states that HMCL runs on Windows, Linux, macOS and FreeBSD, and supports x86, ARM, RISC-V, MIPS and LoongArch, with a link to a PLATFORM.md table for the exact combinations. That breadth is the product.

The second problem is ModLoader sprawl. HMCL lists Forge, NeoForge, Cleanroom, Fabric, Legacy Fabric, Quilt, LiteLoader and OptiFine as installable loaders, alongside mod management, game customizing and modpack creation. A player who moves between a Forge modpack and a Fabric one does not need a second tool. The intended user is a player who wants one launcher across several machines, or a modpack author who needs to assemble and export a pack without leaving the launcher.

HMCLBoot: the launcher is itself a bootstrapped Java program

The repository root splits the code into HMCL/, HMCLCore/ and HMCLBoot/, with a Gradle Kotlin build (build.gradle.kts, settings.gradle.kts, buildSrc/) and a checked-in Gradle wrapper. That three-module layout is the architecture worth understanding before you adopt it.

The README does not say what each module contains, so the split is visible only from the directory names.

Installing HMCL and creating a first game instance

The README does not give shell install steps. It points to three download sources: the official website at hmcl.huangyuhui.net, the GitHub Release page, and a CNB Release mirror. The README gives no further install steps.

To build from source instead, the Contributing Guide is the entry point the README names. It documents building and running HMCL from source, and a set of debug options for adjusting launcher behaviour. The repository ships gradlew, gradlew.bat and gradlew.ps1, so the wrapper works without a system Gradle install.

Once the launcher is open, the first real task is creating an instance and installing a loader. The README lists Forge, NeoForge, Cleanroom, Fabric, Legacy Fabric, Quilt, LiteLoader and OptiFine as the loaders HMCL can install. Pick the Minecraft version, pick the loader, and let the launcher fetch the game files. Mod management and modpack creation are then handled inside the same window.

Where HMCL is the wrong tool

HMCL assumes a graphical desktop. The README's supported-platform claim is about operating systems and CPU architectures, not about running without a display. A server operator who wants to script account and instance setup on a headless box gets nothing from this project; the launcher is for people sitting in front of a screen.

The third is Java. HMCL is a Java program, so it needs a Java runtime on the machine, and the game needs one too. On a minimal Linux or FreeBSD install that is a real prerequisite, not a formality. Users who expect a self-contained native binary will be disappointed.

Finally, the licence. HMCL is GPL-3.0, and the README adds terms under GPLv3 Section 7. If you intend to modify and redistribute it, those terms apply to you. If you just play the game, they do not.

HMCL against Prism Launcher and the official launcher

The obvious comparison is Prism Launcher, which is also an open-source, multi-instance Minecraft launcher. The difference in approach is the runtime. Prism Launcher is a native application built with Qt; HMCL is a Java application. If your platform is mainstream x86 Windows or macOS, the native route is the more conventional pick and the Java runtime requirement disappears.

The official Minecraft launcher is the other reference point. It launches the game and little else. HMCL's README leads with mod management, game customizing, loader installation and modpack creation, so the two are not competing on the same task. The official launcher is the right tool if you play vanilla and never touch a mod; HMCL is the right tool if managing loaders and packs is the reason you open a launcher at all.

Maintenance cadence, updates and what the licence asks of you

The repository is not archived, and its last push was on 2026-11-02. Recent releases include v3.17.0.364 on 2026-11-01, v3.17.0.363 on 2026-10-25 and v3.17.0.362 on 2026-10-20. The project also publishes through a CNB mirror and a Gitee mirror, which matters if GitHub is slow or blocked where you are.

Anyone building from source has to track the Gradle Kotlin build.

Licensing is where a redistributor needs to pay attention. HMCL is GPL-3.0 with additional terms under Section 7. Two are stated in the README: a modified distribution must change the software name or version number in a reasonable way to distinguish it from the original, and the copyright declaration displayed in the software must not be removed. The README points at Metadata.java for the name and version strings. This is a description of the project's terms, not legal advice; if you plan to ship a fork, read the LICENSE file yourself.

Editorial conclusion

Adopt HMCL if you play Minecraft on Linux, FreeBSD, ARM or RISC-V hardware and want mod, ModLoader and modpack management in one launcher. Do not adopt it if you need a launcher you can rebrand and ship closed: the GPL-3.0 terms carry additional Section 7 conditions requiring a changed name or version number on modified distributions and the retention of the copyright notice. Before installing, open PLATFORM.md and confirm your operating system and CPU architecture are listed, then download it from the official website or the GitHub Release page rather than a mirror of unknown provenance.

Frequently asked questions

What are the benefits of using HMCL?

It runs on Windows, Linux, macOS and FreeBSD across x86, ARM, RISC-V, MIPS and LoongArch, and it bundles mod management, game customizing, ModLoader installation and modpack creation in one launcher. The README lists Forge, NeoForge, Cleanroom, Fabric, Legacy Fabric, Quilt, LiteLoader and OptiFine as installable loaders.

Is HMCL free to use?

Yes. HMCL is distributed under GPL-3.0 with additional terms under GPLv3 Section 7, and the README points to the official website, GitHub Release and CNB Release as download sources. There is no paid tier described in the README.

Is a MC launcher safe?

The README makes no general safety claim for launchers. For HMCL specifically, it directs users to the official website, the GitHub Release page and the CNB Release mirror, and the project is GPL-3.0 with a published source tree, so you can inspect or build it yourself.

Official sources

  1. HMCL-dev/HMCL on GitHub
  2. License: GPL-3.0
  3. Project website
  4. README
  5. Releases
Add this badge to your README

If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.

Add this badge to your README

markdown
[![Hysen Labs](https://hysenlabs.com/badge/hmcl-dev-hmcl.svg)](https://hysenlabs.com/projects/hmcl-dev-hmcl)

Star history chart for your README

markdown
[![Star history](https://hysenlabs.com/chart/hmcl-dev-hmcl.svg)](https://hysenlabs.com/projects/hmcl-dev-hmcl)

Was this useful?