https://github.com/HMCL-dev/HMCL
A Minecraft Launcher which is multi-functional, cross-platform and popular
https://github.com/HMCL-dev/HMCL
javafx minecraft minecraft-launcher
Last synced: about 1 month ago
JSON representation
A Minecraft Launcher which is multi-functional, cross-platform and popular
- Host: GitHub
- URL: https://github.com/HMCL-dev/HMCL
- Owner: HMCL-dev
- License: gpl-3.0
- Created: 2015-06-22T08:06:03.000Z (almost 10 years ago)
- Default Branch: main
- Last Pushed: 2025-02-16T13:10:58.000Z (2 months ago)
- Last Synced: 2025-02-17T09:15:24.682Z (2 months ago)
- Topics: javafx, minecraft, minecraft-launcher
- Language: Java
- Homepage: https://hmcl.huangyuhui.net
- Size: 27 MB
- Stars: 7,268
- Watchers: 98
- Forks: 695
- Open Issues: 201
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- stars - HMCL-dev/HMCL - functional, cross-platform and popular (HarmonyOS / Windows Manager)
README
# ⛏ Hello Minecraft! Launcher 💎
[](https://ci.huangyuhui.net/job/HMCL)


[](https://discord.gg/jVvC7HfM6U)
[](https://docs.hmcl.net/groups.html)**English** | [简体中文](README_cn.md) | [繁體中文](README_tw.md)
## Introduction
HMCL is an open-source, cross-platform Minecraft launcher that supports Mod Management, Game Customizing, ModLoader Installing (Forge, NeoForge, Fabric, Quilt, LiteLoader, and OptiFine), Modpack Creating, UI Customization, and more.
HMCL has amazing cross-platform capabilities. Not only does it run on different operating systems like Windows, Linux, and macOS, but it also supports various CPU architectures such as x86, ARM, RISC-V, MIPS, and LoongArch. You can easily enjoy Minecraft across different platforms through HMCL.
For systems and CPU architectures supported by HMCL, please refer to [this table](PLATFORM.md).
## Download
Download the latest version from the [official website](https://hmcl.huangyuhui.net/download).
You can also find the latest version of HMCL in [GitHub Releases](https://github.com/HMCL-dev/HMCL/releases).
Although not necessary, it is recommended only to download releases from the official websites listed above.
## License
The software is distributed under [GPLv3](https://www.gnu.org/licenses/gpl-3.0.html) license with the following additional terms:
### Additional terms under GPLv3 Section 7
1. When you distribute a modified version of the software, you must change the software name or the version number in a reasonable way in order to distinguish it from the original version. (Under [GPLv3, 7(c)](https://github.com/HMCL-dev/HMCL/blob/11820e31a85d8989e41d97476712b07e7094b190/LICENSE#L372-L374))
The software name and the version number can be edited [here](https://github.com/HMCL-dev/HMCL/blob/javafx/HMCL/src/main/java/org/jackhuang/hmcl/Metadata.java#L33-L35).
2. You must not remove the copyright declaration displayed in the software. (Under [GPLv3, 7(b)](https://github.com/HMCL-dev/HMCL/blob/11820e31a85d8989e41d97476712b07e7094b190/LICENSE#L368-L370))
## Contribution
If you want to submit a pull request, here are some requirements:
* IDE: IntelliJ IDEA
* Compiler: Java 1.8 or Java 11+
* Do NOT modify `gradle` files### Compilation
Simply execute the following command in the project root directory:
```bash
./gradlew clean build
```Make sure you have at least JavaFX 8 installed. Liberica Full JDK 8 or later is recommended.
## JVM Options (for debugging)
| Parameter | Description |
| -------------------------------------------- | --------------------------------------------------------------------------------------------- |
| `-Dhmcl.home=` | Override HMCL directory |
| `-Dhmcl.self_integrity_check.disable=true` | Bypass the self integrity check when checking for updates |
| `-Dhmcl.bmclapi.override=` | Override API Root of BMCLAPI download provider. Defaults to `https://bmclapi2.bangbang93.com` |
| `-Dhmcl.font.override=` | Override font family |
| `-Dhmcl.version.override=` | Override the version number |
| `-Dhmcl.update_source.override=` | Override the update source for HMCL itself |
| `-Dhmcl.authlibinjector.location=` | Use the specified authlib-injector (instead of downloading one) |
| `-Dhmcl.openjfx.repo=` | Add custom Maven repository for downloading OpenJFX |
| `-Dhmcl.native.encoding=` | Override the native encoding |
| `-Dhmcl.microsoft.auth.id=` | Override Microsoft OAuth App ID |
| `-Dhmcl.microsoft.auth.secret=` | Override Microsoft OAuth App Secret |