NovaConfig
A high-level configuration system for mod developers—focused on expressiveness, modularity, and zero boilerplate.
✨ Features
-
✅ DSL-Based Config
Rich Kotlin builder syntax with intuitive declarations -
🎛️ Modular UI Components
Toggles, sliders, dropdowns, keybinds, color pickers—fully composable -
♻️ Live Reloading
Config changes apply instantly in-game -
📘 Inline Markdown Docs
Embed documentation and onboarding info right into config UIs
🧩 Getting Started
Add this to your build.gradle.kts
:
repositories {
maven { url = uri("https://repo.essential.gg/public") }
mavenCentral()
maven { url = uri("https://jitpack.io") }
}
dependencies {
modImplementation("com.github.Eclipse-5214:nova-config:1.0.1")
}
And in fabric.mod.json
:
"depends": {
"nova-config": "*"
}
JitPack supports version tags and commit hashes—use
1.0.1
or later for the stable DSL.
🛠 Example
val config = NovaApi.createConfig("example", "yourmodid") {
category("General") {
toggle {
configName = "enabled"
name = "Enable Feature"
description = "Toggle a feature on or off"
default = true
}
colorpicker {
configName = "themeColor"
name = "Theme Color"
description = "Pick your favorite hue"
default = rgba(255, 255, 255, 255)
}
}
}
To access:
val config = NovaApi["example"]
val isEnabled = config as Boolean ?: false
val themeColor = (config as RGBA).getColor("themeColor")
🙌 Credits
- [Eclipse (NEXD_)] – Creator & lead dev
- Elementa UI
- Amaterasu
- Catppuccin – Palette
- Stella – The mod NovaConfig was born for
- All contributors, testers, and those giving feedback
- And DrPepper of course
External resources
Featured versions
See allProject members

Eclipse-5214
Owner
Technical information
License
ARR
Client side
required
Server side
unsupported
Project ID