James's Config Lib
James's Config Lib is a lightweight library that lets other mods define their own configuration files and options through a shared, extendable system.
What it does
The library provides two built-in configuration types. Registry configs read a set of objects from a config file, and setting configs store a single value of a chosen type. A registry config that holds non-primitive objects needs the type to be specified, because the library cannot infer it from the value alone. Setting configs also require a type declaration, so each option is parsed as the correct kind of data.
The library is intended to be bundled or required by other mods rather than played alone. It is published for Fabric, Forge, NeoForge and Quilt across 14 release versions, 1.17.1 – 1.20.4, and the code is open source under the MIT License. Architectury API and Fabric API are required dependencies, so both must be present in the mod folder alongside this library. Either side can run it, and neither needs it to be present, so it can sit on a single-player client or on a dedicated server.
Key features
Extendable config system
Other mods can add their own configuration definitions on top of the library's base classes.
Registry configs
A registry config reads a collection of objects from the config file and maps each entry to a registered object.
Setting configs
A setting config stores one value of a chosen type, which the mod reads back when it loads.
Version and loader metadata
Each config file records the library version and the loader it was written for, so mismatches are visible.
Compatibility
Latest build for each game version and loader.
1.20.x5 of 5 versions with builds
1.19.x5 of 5 versions with builds
1.18.x3 of 3 versions with builds
1.17.x1 of 1 version with builds
Only full game releases are shown. This mod publishes no snapshot builds.
Requirements
Dependencies declared by the latest file for each loader.
Required 2
Use cases
Who it’s for: Mod developers who want to expose options to players without writing config parsing code from scratch. Players mostly meet the library as a dependency of other mods.
How it compares
Atlas Core is open source under the MIT License, runs client and server on Fabric, Forge, NeoForge and Quilt, and covers 1.20 – 26.2. Generic Registry works on either side, and neither needs it, and is open source under the GNU General Public License v3.0 or later; it covers only Fabric, with 1.7.2 – 26.1.2. Dynamic Registries is a Forge-only, client and server mod for 1.18.1, licensed under the GNU Lesser General Public License v3.0 only.
| Mod | Loaders | Game versions | Environment | Updated |
|---|---|---|---|---|
| James's Config Lib | Fabric, Forge, NeoForge and Quilt | 1.17.1 – 1.20.4 | Client or server, optional | 2024-01-27 |
| Atlas Core | Fabric, Forge, NeoForge and Quilt | 1.20 – 26.2 | Client and server | 2026-07-06 |
| Generic Registry | Fabric | 1.7.2 – 26.1.2 | Client or server, optional | 2026-05-21 |
| Dynamic Registries | Forge | 1.18.1 | Client and server | 2022-03-01 |
Questions
Which loader should a server owner choose for James's Config Lib?
Does James's Config Lib need Fabric API?
Does the library have to be installed on a server?
In the catalog
James's Config Lib is one of 3,514 Library mods on ModsFinder, and one of 2,348 Library mods for Fabric. 13,907 mods support Minecraft 1.20.4.
More from itsmenotjames
Similar mods
What the author says
James's config mod is a lightweight config mod for easily adding extendible configs. There are two built-in "types" of configs: Registry configs and Setting configs. Registry configs are configs which can have any amount of objects, which will all be read into the config. Each non-primitive object in a registry…
Official listing
- Modrinth page
- modrinth.com/mod/config-lib
- Owner
- itsmenotjames
- Published
- 2023-10-14
- Updated on Modrinth
- 2024-01-27
- Facts verified
- 2026-10-15
