Описание
# reconfigure
A config library for my mods
[](https://replaceitem.github.io/reconfigure/)
[](https://fabricmc.net/)
[](https://modrinth.com/mod/fabric-api)
[](https://modrinth.com/mod/reconfigure)
[](https://github.com/replaceitem)
[](https://discord.gg/etTDQAVSgt)
## Design goals
* Uses the builder pattern so all options autocomplete. Just start with `Config.builder()` and autocompletion will guide you through the whole process of creating a configuration
* Designed to be used in the field initializers of a config class
* Does not use annotations for flexibility at runtime
## Preview


## Example definition
```java
class DemoConfig {
public final Config CONFIG = Config.builder("reconfigure-test")
.serializer(Serializers.JSON)
.build();
public final ConfigTab DEMO_TAB = CONFIG.createTab("demo").build();
Void HEADLINE = DEMO_TAB.createHeadline("headline");
public final Property STRING = DEMO_TAB.createStringProperty("string").defaultValue("Hello world")
.asTextField().placeholder("Enter something").build();
public final Property CHECKBOX = DEMO_TAB.createBooleanProperty("checkbox").defaultValue(true)
.asCheckbox().build();
public final Property TOGGLE_BUTTON = DEMO_TAB.createBooleanProperty("toggle_button")
.asToggleButton().build();
public final Property SLIDER = DEMO_TAB.createIntegerProperty("slider").defaultValue(4).range(1,10)
.asSlider().build();
public final Property CYCLE_BUTTON = DEMO_TAB
.createEnumProperty("cycle_button", DayOfWeek.class)
.defaultValue(DayOfWeek.MONDAY)
.asCyclingButton()
.build();
public final Property COLOR = DEMO_TAB.createIntegerProperty("color").asColorPicker().build();
public final Property EDIT_BOX = DEMO_TAB.createStringProperty("box").asEditBox().build();
public final Property CHIP_LIST = DEMO_TAB.createListProperty("chiplist")
.asChipList()
.build();
}
```