Skip to content

Tango's Dynamic Hud Lib

A small client-side Fabric library for movable HUD widgets. Provides an API that other mods can use to register HUD elements. For players, that means TangosHudLib renders and stores the widgets that another mod registers through this l

Fabric
Loaders
Fabric
Downloads on Modrinth
1.1K
Followers on Modrinth
1
versions
4
Updated
July 24, 2026Jul 24
Published
in 2026
This is a library — other mods need it, and it adds nothing to the game by itself

At a glance

A library: other mods need it
Runs on Fabric
For Minecraft 1.21.10–1.21.11, 26.1.2–26.2
Client only — no need to install it on the server
Latest version — 1.2.0+26.2 from July 24, 2026
Requires Fabric API
Where it's needed
In gamerequiredOn servernot needed

Install in the game only; not needed on the server

Game versions1.21.10–1.21.11, 26.1.2–26.2

Tango's HudLib

Tango's HudLib is a small client-side Fabric library for movable HUD widgets.

The mod itself does not add major gameplay features. It provides an API that other mods can use to register HUD elements. For players, that means TangosHudLib renders and stores the widgets that another mod registers through this library.

In-Game Usage

  1. Install the mod together with Fabric API.
  2. Start the game with a mod that registers widgets through TangosHudLib.
  3. Open the Tango's HudLib category in the Minecraft controls menu.
  4. Look for `HUD Editor ()`.
  5. Press the assigned key in-game to open that mod's HUD editor.
  6. Drag widgets with the left mouse button to move them.
  7. Close the editor with the same hotkey or with Esc.

Widget positions are stored in config/tangos-hud-lib.json.

Using It In Your Own Mod

The smallest clean integration has two parts:

  1. A class with static methods annotated with @HudWidget.
  2. A registration call inside your ClientModInitializer.

Example

package eu.example.mod;

import eu.tango.tangosHudLib.api.HudContent;
import eu.tango.tangosHudLib.api.HudLibrary;
import eu.tango.tangosHudLib.api.HudWidget;
import net.fabricmc.api.ClientModInitializer;
import net.minecraft.client.MinecraftClient;
import net.minecraft.text.Text;
import net.minecraft.util.Formatting;
import org.lwjgl.glfw.GLFW;

public final class ExampleModClient implements ClientModInitializer {
    @Override
    public void onInitializeClient() {
        HudLibrary.registerWidgets("examplemod", GLFW.GLFW_KEY_H, ExampleWidgets.class);
    }

    public static final class ExampleWidgets {
        private ExampleWidgets() {
        }

        @HudWidget(id = "position")
        public static HudContent position() {
            MinecraftClient client = MinecraftClient.getInstance();
            if (client.player == null) {
                return HudContent.builder()
                    .line(Text.literal("Position").formatted(Formatting.GOLD))
                    .line(Text.literal("No world loaded").formatted(Formatting.GRAY))
                    .build();
            }

            return HudContent.builder()
                .line(Text.literal("Position").formatted(Formatting.GOLD))
                .line(Text.literal(
                    client.player.getBlockX() + " "
                        + client.player.getBlockY() + " "
                        + client.player.getBlockZ()
                ).formatted(Formatting.WHITE))
                .build();
        }
    }
}

Rules For @HudWidget

A widget method must:

  • be static
  • have no parameters
  • return HudContent
  • use a non-empty id

HudContent must contain at least one non-blank line:

HudContent.builder()
    .line(Text.literal("Title"))
    .line(Text.literal("Content"))
    .build();

API Summary

  • HudLibrary.registerWidgets(String ownerId, int defaultKey, Class<?> clazz) registers all @HudWidget methods in the class and assigns a default HUD editor hotkey.
  • HudLibrary.registerWidgets(String ownerId, Class<?> clazz) registers widgets without a default hotkey.
  • HudLibrary.registerWidgets(Class<?> clazz) uses the library defaults tangos-hud-lib and H.

FAQ

How to install Tango's Dynamic Hud Lib?

Install Fabric for your Minecraft version, download Tango's Dynamic Hud Lib for the same version and loader, put the file into the mods folder and launch the game with the loader profile.

Which Minecraft versions does Tango's Dynamic Hud Lib support?

Tango's Dynamic Hud Lib has builds for Minecraft 1.21.10–1.21.11, 26.1.2–26.2.

Is Tango's Dynamic Hud Lib needed on the server?

Client only — no need to install it on the server

License and source
GNU General Public License v3.0 onlyfree to use and share; changes to the mod itself must be published under the same license
Original — Modrinth↗Files unchanged, verified with SHA-512Is this your mod? For rights holders

The site uses cookies: the necessary ones for sign-in and the theme, plus the Yandex Metrica and LiveInternet visit counters — they show us how the site is used. We have no advertising cookies. More