A fast, open-source Minecraft launcher built with Tauri and React.
Organize instances, discover community content, manage Java, and launch Minecraft from one focused desktop app.
Website | Latest release | Discord | Contributing
|
Instances that stay organized Create, group, duplicate, export, pin, search, and filter instances. Choose install locations and import existing MultiMC or Prism libraries. |
Content without browser hopping Install mods, modpacks, shaders, resource packs, and datapacks from Modrinth or CurseForge. Sort, update, and save reusable mod profiles. |
|
Player tools in context Manage worlds and backups, browse screenshots, track servers with live status, and control resources or shaders per instance. |
Accounts and Java handled Use Microsoft, offline, or Yggdrasil accounts. Refract finds or downloads the right Java runtime and offers optional performance presets. |
Refract also includes automatic updates, crash-report copying, customizable themes, Discord Rich Presence, and Java Edition license verification.
curl -fsSL https://refractmc.net/install.sh | sh| Platform | Package |
|---|---|
| Windows 10/11 | Download .exe |
| macOS — Apple Silicon | Download ARM64 .dmg |
| macOS — Intel | Download Intel .dmg |
| Linux — AppImage | Download .AppImage |
| Linux — Debian/Ubuntu | Download .deb |
| Other packages | View the latest release |
Note
macOS builds are currently unsigned. On first launch, right-click Refract, choose Open, and confirm the prompt.
The React renderer handles the launcher experience. Tauri and Rust provide the native shell, secure credential storage, downloads, file operations, and platform integration.
- Node.js 20 or newer
- pnpm 9 or newer
- Rust stable
- The Tauri prerequisites for your operating system
Windows packaging also requires WebView2 and the Microsoft C++ build tools.
git clone https://github.com/RefractMC/Refract_MC.git
cd Refract_MC
pnpm install
pnpm devCreate a local unsigned build with:
pnpm buildSee CONTRIBUTING.md for verification commands, signed builds, project conventions, and pull request guidelines.
Repository layout
apps/renderercontains the shared React renderer.apps/tauricontains the Tauri shell and Rust backend.apps/electron-bridgemigrates older Electron installs to Tauri.packages/corecontains shared launcher logic.packages/plugin-apicontains the public plugin API.localescontains translation files.
Refract keeps user-facing strings in locales. To add a language,
copy locales/en.json, rename it with a BCP 47 language tag, translate the
values, and keep every JSON key unchanged.
The translation guide explains locale registration, parameterized strings, validation, and pull request naming.
- Report reproducible bugs through GitHub Issues.
- Join the Refract Discord for community help and project discussion.
- Read the security policy before reporting a vulnerability.
- Review the contribution guide before opening a pull request.
Refract is licensed under the GNU General Public License v3.0.
