Mods
Resource Packs
Data Packs
Modpacks
Shaders
Plugins
Mods Resource Packs Data Packs Plugins Shaders Modpacks
Get Modrinth App Upgrade to Modrinth+
Sign in
ModsPluginsData PacksShadersResource PacksModpacks
Sign in
Settings
YetAnotherConfigLib (YACL)

YetAnotherConfigLib (YACL)

A builder-based configuration library for Minecraft.

24.60M
5,077
Library
Management
Utility
AboutGalleryChangelogVersions

YetAnotherConfigLib

Enviroment Java 17 Discord

Modrinth CurseForge

Ko-fi

Yet Another Config Lib, like, what were you expecting?

Why does this mod even exist?

This mod was made to fill a hole in this area of Fabric modding. The existing main config libraries don't achieve what I want from them:

  • Cloth Config API: It's stale. The developer of cloth has clarified that they are likely not going to add any more features. They don't want to touch it. (citation)
  • SpruceUI: It isn't designed for configuration. In this essence the design feels cluttered. Further details available in this issue.
  • MidnightLib: It has cosmetics among other utilities. It may not be large but some players (including me) wouldn't want cosmetics out of nowhere.
  • OwoLib: It's content focused. It does a lot of other things as well as config, adding to the size.

As you can see, there's sadly a drawback with all of them and this is where YetAnotherConfigLib comes in.

How is YACL better?

YACL has the favour of hindsight. Whilst developing this fresh library, I can make sure that it does everything right:

  • Easy API. YACL takes inspiration from Sodium's internal configuration library.
  • It's styled to fit in Minecraft. YACL's GUI is designed to fit right in.

Features

YACL has a ton of configuration features:

  • Custom control widgets
    • Create your own unique "controller" if the default set does not suit your needs
  • Rich descriptions
    • Clickable & hoverable text, powered by vanilla's Text component system
    • WebP (including animated) image previews
    • Custom rich-renderable section to replace image
  • Multiple controllers for the same type:
    • Sliders or fields for numbers
    • Dropdowns, cyclers, or raw text fields for strings
    • Tickboxes or ON/OFF text display for booleans
    • ...and more!
  • Fully-featured color picker
  • Accessible with full compatibility for keyboard control (optimised for Controlify usage)
  • High organisation with tabs (categories) and collapsable groups
  • Built-in serialization/deserialization techniques so you can skip the error-prone config code
  • Full alternative Kotlin DSL

Usage

The wiki contains a full documentation on how to use YACL.

Screenshots

image preview

License

This mod is under the GNU Lesser General Public License, v3.0.

90% of ad revenue goes to creators

Support creators and Modrinth ad-free with Modrinth+

Compatibility

Minecraft: Java Edition

1.21.x
1.20.x
1.19.x

Platforms

Fabric
Forge
NeoForge
Quilt

Supported environments

Client-side
Server-side
Client and server (optional)

Links

Report issues View source Visit wiki Join Discord server
Donate on Patreon

Creators

isxander
isxander Owner

Details

Licensed LGPL-3.0-or-later
Published 2 years ago
Updated last month

Modrinth is open source.

main@fafd47f

© Rinth, Inc.

Company

TermsPrivacyRulesCareers

Resources

SupportBlogDocsStatus

Interact

Discord X (Twitter) Mastodon Crowdin
Get Modrinth App Settings
NOT AN OFFICIAL MINECRAFT SERVICE. NOT APPROVED BY OR ASSOCIATED WITH MOJANG OR MICROSOFT.