Configory

Quick rating

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

Configory

By Indemnity83Owner

No reviews yet

Configory is a lightweight configuration library for Minecraft mods. Define each value once - with its type, default, and validation rules - then read and write it with full type safety, dot-notation paths, and JSON-backed, per-mod config files.

Mod Loaders
Minecraft
26.2

About

Description

Configory

Convention-based configuration for Minecraft mods.

Configory is a small Java configuration library that makes mod config feel simple at the call site without giving up type safety where your code needs it. Define a value once — with its type, default, and constraints — and use it safely everywhere.

public static final ConfigKey<Float> SPEED_MULTIPLIER =
        config.defineFloat("core.speed_multiplier", 1.0f)
                .range(0.1f, 10.0f)
                .describe("Global speed multiplier.")
                .register();

float speed = getConfig(SPEED_MULTIPLIER);
setConfig(SPEED_MULTIPLIER, 3.0f).save();

Need dynamic access for debug tooling or scripts? Reach for the same config by string path:

float speed = getConfig("core.speed_multiplier").asFloat();
setConfig("core.speed_multiplier", 3.0f).save();

Features

  • Typed config keys — read and write values with compile-time type safety.
  • Dot-notation paths — nest values inside a config's JSON file, or keep a simple mod to a single flat file.
  • Fluent validation — declare ranges and constraints once; invalid writes are rejected.
  • Generated command surface — expose your config through your mod's own in-game command, with zero Brigadier boilerplate.
  • JSON-backed files — human-readable config, with explicit saving so you control when it's written.
  • Per-mod isolation — each mod maps to its own config file, cleanly separated.
  • Lightweight bootstrap conventions — minimal setup to get going.

Notes

Configory is a loader-agnostic library mod (it depends only on Gson and targets Java 21). Compile against it as a normal dependency, but don't bundle it — ship it as a required dependency and let players install the Configory jar separately, so several mods can share one copy. A single jar loads on Fabric, Forge and NeoForge and it works across a very wide range of Minecraft versions.

Links


Icon: book_scroll_written by Malcolm Riley, CC BY 4.0, upscaled.