Community listing page, reviews may not be monitored by the author.
S-Lib
No reviews yet
An easy to use config and utility library.
Community voices
Reviews
No reviews yet. Be the first to review this project!
Get it on
Available Platforms
Compatibility
Supported Environments
Runs entirely on the client. Works on vanilla servers.
Must be installed on both the client and the server.
Works on the client or the server alone, but does more when on both.
Varies by version.
About
Project Details
For authors
Embed Badge
If you're the author of this project, you can embed a live badge anywhere that supports HTML or Markdown. It updates automatically whenever ratings change.
Use HTML for any page that supports it, or Markdown for README files and Markdown-based descriptions.
Identifiers
Platform IDs
About
Description
S-Lib
S-Lib is a lightweight utility and config library for Minecraft modding.
Example mod: Check out the S-Lib Test Mod repository for complete config usage examples and GUI generation using YACL.
Features
Annotation-Driven Configs
- Register synced or local configs in a single line of code using
SLibConfig.syncedBuilder()orSLibConfig.localBuilder(). - Network
@SyncOptions:OVERRIDE_CLIENT: server authoritative config, syncs to the client. Config broadcasts on login and updates in real time. Supports configurable permission checks (e.g., OP-only).INFORM_SERVER: local config, informs server of changesNONE: local config, no network sync
- Newly added fields are automatically populated with defaults, obsolete keys are removed, and values are clamped to specified ranges when using the annotations
@RangeInt,@RangeFloat, and@RangeDouble. - Insert comments using the
@Commentannotation on top of fields, directly in your config class. - Backups are automatically created if file corruption or invalid syntax is detected, preserving the broken config if you accidentally make a mistake.
- Use the
@Nestannotation to allow usage of nested classes for more complex config structures. - Use the
@Ignoreannotation to ignore a field entirely. - Built-in type adapters compatible with serialization for AWT's
Color, Minecraft'sTextColor,Identifier,Pattern, andUUIDclasses.
Custom YACL Controllers
Custom controllers for YACL:
- Advanced Color Controller: Supports hex codes (
#RRGGBBAA), Minecraft color names, and legacy formatting codes (&a,&3). - Item or Tag Controller: Autocomplete dropdown for matching exact items, tags (
#c:swords), namespaces (minecraft:*), and regex patterns. - Simple Dropdowns: Dropdown selectors for Enums and Strings.
General Utilities
- Target Matcher Engine: Item matching via exact IDs, tags, namespaces, wildcards (
*), and regex (regex:.*_sword). - Platform Helpers: Abstractions for loader-specific methods, both as a general utility (
PlatformHelper) and for network-related features (NetworkHelper). - Math and Color Utils: Easing functions (lerp, ease-out, clamp), text gradient generators, color utilities, and more.
S-Lib
S-Lib is a lightweight utility and config library for Minecraft modding.
Example mod: Check out the S-Lib Test Mod repository for complete config usage examples and GUI generation using YACL.
Features
Annotation-Driven Configs
- Register synced or local configs in a single line of code using
SLibConfig.syncedBuilder()orSLibConfig.localBuilder(). - Network
@SyncOptions:OVERRIDE_CLIENT: server authoritative config, syncs to the client. Config broadcasts on login and updates in real time. Supports configurable permission checks (e.g., OP-only).INFORM_SERVER: local config, informs server of changesNONE: local config, no network sync
- Newly added fields are automatically populated with defaults, obsolete keys are removed, and values are clamped to specified ranges when using the annotations
@RangeInt,@RangeFloat, and@RangeDouble. - Insert comments using the
@Commentannotation on top of fields, directly in your config class. - Backups are automatically created if file corruption or invalid syntax is detected, preserving the broken config if you accidentally make a mistake.
- Use the
@Nestannotation to allow usage of nested classes for more complex config structures. - Use the
@Ignoreannotation to ignore a field entirely. - Built-in type adapters compatible with serialization for AWT's
Color, Minecraft'sTextColor,Identifier,Pattern, andUUIDclasses.
Custom YACL Controllers
Custom controllers for YACL:
- Advanced Color Controller: Supports hex codes (
#RRGGBBAA), Minecraft color names, and legacy formatting codes (&a,&3). - Item or Tag Controller: Autocomplete dropdown for matching exact items, tags (
#c:swords), namespaces (minecraft:*), and regex patterns. - Simple Dropdowns: Dropdown selectors for Enums and Strings.
General Utilities
- Target Matcher Engine: Item matching via exact IDs, tags, namespaces, wildcards (
*), and regex (regex:.*_sword). - Platform Helpers: Abstractions for loader-specific methods, both as a general utility (
PlatformHelper) and for network-related features (NetworkHelper). - Math and Color Utils: Easing functions (lerp, ease-out, clamp), text gradient generators, color utilities, and more.
Screenshots
Gallery
Versions
Files
Relations
Project Relations
More like this
Similar Mods
Suggestions use data such as tags, dependencies, dependents, descriptions, titles, and more to rank how much they overlap with this mod.
On ModDex
Community snapshot
By the numbers
Statistics
(opens in a new tab)
Get it on
Available Platforms
On ModDex
Community snapshot
By the numbers