Skip to content

Install DaisyConfig

DaisyConfig is the typed YAML and config lifecycle layer in the Daisy ecosystem.

Use it when you want:

  • typed YAML config objects
  • reload-safe handles
  • managed file lifecycle and config_version
  • missing-key merge and ordered migrations
  • module bundles for settings.yml plus lang.yml
  • DaisySeries-backed value codecs
  • DaisyCore-friendly config-backed text sources
  • Java 21
  • Kotlin 2.3.x
  • Paper 1.21.x
repositories {
mavenCentral()
maven("https://repo.papermc.io/repository/maven-public/")
maven("https://jitpack.io")
}
dependencies {
implementation("cat.daisy:config-all:0.2.0")
}

config-all is the normal install for real plugins because it already includes:

  • config-base
  • config-yaml
  • config-managed
  • config-modules
  • config-daisycore
implementation("cat.daisy:config-base:0.2.0")
implementation("cat.daisy:config-yaml:0.2.0")
implementation("cat.daisy:config-managed:0.2.0")
implementation("cat.daisy:config-modules:0.2.0")
implementation("cat.daisy:config-daisycore:0.2.0")

Use narrower modules only when you know you want a smaller surface:

  • config-yaml for simple unmanaged file loading
  • config-managed when you need versioning and migration but not module conventions
  • config-modules when your plugin already uses modules/<category>/<module>/settings.yml

Build your first typed YAML config with First Config, then move to Managed YAML Files when file lifecycle becomes part of the problem.