Quick Start
What is WebGUI?
WebGUI is a Minecraft mod (Fabric and NeoForge) that embeds a real Chromium browser (via Rinku, formerly MCEF) directly in the game client. It lets server operators display any web page — React, Vue, plain HTML — as a transparent HUD overlay for their players, and set a custom main menu page accessible with a keybind.
Requirements
| Requirement | Version |
|---|---|
| Minecraft | 1.20.1, 1.21.1, 1.21.11, 26.1.2, 26.2 |
| Mod Loader | Fabric ≥ 0.16.0 (1.20.1 – 1.21.11) · NeoForge (1.21.1 – 26.2) |
| Fabric API | required on Fabric |
| Rinku | required on NeoForge · bundled inside the jar on Fabric |
| Java | 21, or 25 on Minecraft 26 |
Both the client and dedicated servers are supported on each loader.
Minecraft 26 builds are NeoForge-only — Fabric is on hold there until Yarn mappings for 26.x are published.
Installation
- Download the latest
webgui-*.jarfrom Releases. - Place it in your
.minecraft/mods/folder:- Fabric — alongside Fabric API. The browser library is inside the WebGUI jar, so there is nothing else to add.
- NeoForge — alongside Rinku. It is not bundled there.
- Start the game — Chromium itself is downloaded on first launch (~150 MB).
NeoForge needs Rinku
Rinku is a hard requirement on NeoForge, not a nicety: WebGUI's mixins target its classes, so without it the game fails during mod loading rather than merely rendering nothing.
Launchers that read Modrinth metadata (Prism, the Modrinth app, CurseForge) install it for you from WebGUI 1.7.0 onward. If you copy jars by hand, add it yourself.
Upgrading from WebGUI 1.6.x or earlier
The browser library was renamed from MCEF to Rinku, and its mod id changed from mcef to rinku. On NeoForge, remove the old MCEF jar and install Rinku instead. On Fabric there is nothing to do — the jar carries it.
How the mod works
WebGUI is configured through config/webgui/server.json on the server and also exposes server-side commands (see Commands). When a player joins, the server can:
- Automatically open a HUD overlay (
autoHudOnJoin) - Send a main menu URL the player can open with
F6(mainMenuUrl)
See server.json config for all available options.
Auto HUD on join
The most common setup — show a web overlay the moment a player connects:
// config/webgui/server.json
{
"autoHudOnJoin": true,
"autoHudUrl": "https://your-hud.example.com"
}Restart the server and join to test it.
Main menu on F6
Send players a URL they can open any time with F6:
{
"mainMenuUrl": "https://your-menu.example.com"
}Next steps
- server.json config — all configuration fields
- Keybindings — player-side HUD controls
- Examples — ready-to-paste configs
- Build your SPA with a type-safe bridge for your framework: React, Vue or Svelte