Compatibility
Minecraft: Java Edition
1.21ā1.21.8
1.20.1ā1.20.6
Platforms
Supported environments
Creators
Details
Licensed MIT
Published last year
Updated 6 months ago
š¦ Smootheez Config Lib (SCL)
A utility mod designed to simplify configuration handling for Minecraft modding.
Primarily developed for my own mods, but freely available for public use.
ā What is SCL?
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:
- ā Config file management
- š ļø Automatic config screen generation
- āļø Automatic config file generation
š¼ļø In-Game Previews
š§ Standard Config Screen

š Config Screen with Descriptions

šļø Edit Value in OptionList

ā Add Value to OptionList

ā Confirmation Screen

š Getting Started
šļø Step 1 ā Add Repository
In your build.gradle:
repositories {
maven {
url "https://jitpack.io"
}
}
š¦ Step 2 ā Add Dependency
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]"
}
š” Example Usage
š§± Step 1 ā Create a Config Class
@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);
}
š§© Step 2 ā Register the Config
In your fabric.mod.json:
"entrypoints": {
// ...existing entrypoints
"scl": [
"dev.smootheez.scl.example.ExampleConfig"
]
}
ā That's it! SCL will automatically generate:
- The config file
- The config screen (requires
ModMenu)
š Note: The config screen will only be generated if:
gui = trueis set- The config
namematches your mod ID
š„ Download
- š Modrinth
- š CurseForge
- š¦ JitPack Releases
š Issue Tracker
Found a bug or have a feature suggestion?
Submit an issue here: GitHub Issues
ā ļø Important Notes
- ā Compatible with Minecraft 1.20.1+
- š Licensed under the MIT License
ā Support Me
If you find this project helpful and want to support my work, consider donating:



