Dnz Config

Quick rating

Community listing page, reviews may not be monitored by the author.

Dnz Config

By DnzMc

No reviews yet

Dnz Config Library for Dnz Hud

Mod Loaders
Minecraft
26.3 26.2

About

Description

# DNZ Config

Clean, modern settings screens for Fabric mods. Build a full config menu in a few lines of code and get switches, sliders, dropdowns, color swatches and text boxes in a dark glass design that looks the same at every GUI scale.

DNZ Config is a library: on its own it only adds an example screen to Mod Menu. Install it if a mod you use needs it.

## For players

- Smooth, rounded menu with soft shadows and animations
- Pages on the left, settings in two columns on the right
- Help text when you rest the mouse on a setting
- Settings are saved to the `config` folder as readable JSON

## For mod developers

```java
ConfigFile<MySettings> file = ConfigFile.of("mymod", MySettings.class);
MySettings s = file.get();

Screen screen = DnzConfig.builder("My Mod")
    .accent(0x4FA3FF)
    .category("General", page -> {
        page.toggle("Enabled", () -> s.enabled, v -> s.enabled = v).note("Turns the mod on or off");
        page.slider("Size", 0, 100, 5, () -> s.size, v -> s.size = v, v -> v + "%");
        page.choice("Mode", List.of("Simple", "Detailed"), () -> s.mode, v -> s.mode = v);
    })
    .category("Look", page -> {
        page.color("Color", () -> s.color, v -> s.color = v);
        page.text("Label", "Type here", 24, () -> s.label, v -> s.label = v);
    })
    .onSave(file::save)
    .build(parent);
```

Rows: `header`, `toggle`, `slider`, `choice` (list or enum), `color`, `text`, `button`, or your own row with `custom`. Every row can get a `.note(...)`, a `.tooltip(...)` or `.wide()`.

`ConfigFile` keeps any plain Java class as `config/<name>.json`. New fields get their default values, and saving writes a temporary file first so a crash never leaves a broken file.

You can nest DNZ Config in your mod jar (jar-in-jar) or ask players to install it.

## Details

- Fabric, client side only
- Minecraft 26.2 and 26.3
- Open source (GPL-3.0): https://github.com/DnzMc/DnzClient
- Made by the team behind DNZ Client: https://dnzclient.com