HomeJavaModsReLib
ReLib
ModsJava

ReLib

by TheSmoothRere · on Modrinth

General-purpose Minecraft mod library, also powering Rere's mods. Free Minecraft Java mod for 26.1, 26.1.1, 26.1.2.

⬇ Download on Modrinth

ReLib

General-purpose utility library for Fabric mods, originally built for TheSmoothRere's mods but open for anyone to use.

Features

Usage

1. Create a config class

import io.github.thesmoothrere.relib.config.ListString;
import io.github.thesmoothrere.relib.config.option.*;

@Config(name = "my_mod")
public class MyModConfig implements ConfigApi {

    private final BooleanOption enabled = new BooleanOption("enabled", true);
    private final IntegerOption volume = new IntegerOption("volume", 50, 0, 100);
    private final DoubleOption sensitivity = new DoubleOption("sensitivity", 0.5, 0.0, 1.0);
    private final StringOption greeting = new StringOption("greeting", "Hello!");
    private final EnumOption<MyEnum> mode = new EnumOption<>("mode", MyEnum.NORMAL);
    private final ListStringOption favoriteColors = new ListStringOption("favorite_colors", "red", "blue");

    public ConfigOption<Boolean> enabled() {
        return enabled;
    }

    public ConfigOption<Integer> volume() {
        return volume;
    }

    public ConfigOption<Double> sensitivity() {
        return sensitivity;
    }

    public ConfigOption<String> greeting() {
        return greeting;
    }

    public ConfigOption<MyEnum> mode() {
        return mode;
    }

    public ConfigOption<ListString> favoriteColors() {
        return favoriteColors;
    }
}

2. Register the entrypoint in fabric.mod.json

{
  "entrypoints": {
    "relib": [
      "com.example.MyModConfig"
    ]
  }
}

3. Access your config anywhere

MyModConfig config = ConfigManager.get(MyModConfig.class);
boolean enabled = config.enabled().getValue();

ConfigManager.load(config);
ConfigManager.save(config);

Option Types

Class Value Type Bounded
BooleanOption Boolean No
StringOption String No
IntegerOption Integer Yes
DoubleOption Double Yes
EnumOption<E> E extends Enum<E> No
ListStringOption ListString No

License

Licensed under the GNU Lesser General Public License v2.1. See LICENSE.

Verified by MCModsHub

These come from our own check of the pack file, not from the source page.

Explore more