A utility mod designed to simplify configuration handling for Minecraft modding.
Primarily developed for my own mods, but freely available for public use.
Smootheez Config Lib (SCL) provides an easier and cleaner way to manage configurations for Minecraft mods.
It removes boilerplate and offers a simple interface for:


OptionList
OptionList

In your build.gradle:
repositories {
maven {
url "https://jitpack.io"
}
}
Using version from gradle.properties:
dependencies {
modImplementation "com.github.smootheez:scl:${project.scl_version}"
}
Or use the version directly:
dependencies {
modImplementation "com.github.smootheez:scl:[version]"
}
@Config(name = "example_config", gui = true)
public class ExampleConfig {
public static final ConfigOption<Integer> INT_TEXT = ConfigOption.create("intText", 0, -5, 100);
public static final ConfigOption<Double> DOUBLE_TEXT = ConfigOption.create("doubleText", 0.0, 0.0, 2.0);
public static final ConfigOption<Integer> INT_SLIDER = ConfigOption.create("intSlider", 0, -5, 100).asSlider();
public static final ConfigOption<Double> DOUBLE_SLIDER = ConfigOption.create("doubleSlider", 0.0, 0.0, 2.0).asSlider();
public static final ConfigOption<Double> DOUBLE_SLIDER_PERCENTAGE = ConfigOption.create("doubleSliderPercentage", 0.0, 0.0, 2.0).asSliderPercentage();
public static final ConfigOption<Boolean> BOOLEAN = ConfigOption.create("boolean", false);
public static final ConfigOption<OptionList> LIST = ConfigOption.create("list", "example_value_1", "example_value_2", "example_value_3");
public static final ConfigOption<ExampleEnum> ENUM = ConfigOption.create("enum", ExampleEnum.EXAMPLE_VALUE_1);
}
In your fabric.mod.json:
"entrypoints": {
// ...existing entrypoints
"scl": [
"dev.smootheez.scl.example.ExampleConfig"
]
}
✅ That's it! SCL will automatically generate:
ModMenu)📌 Note: The config screen will only be generated if:
gui = true is setname matches your mod IDFound a bug or have a feature suggestion?
Submit an issue here: GitHub Issues
If you find this project helpful and want to support my work, consider donating: