SolLib
Modby Lyof429
Lets mods shine by bringing a constellation of (mostly) data utilities.
Type
Mod
CurseForge Downloads
563,076
CurseForge ID
1573497
Modrinth Downloads
186,144
Modrinth ID
EqvAy5kA
Last Updated
Oct 4, 2026
Description

This is a core library for Minecraft mods. Yes, we know, very original.
Believe it or not, copy-pasting a bunch of classes across every project is neither the most efficient nor the most stable idea.
Sol offers a whole constellation of common code for mod developpement.
Most of them orbit around data, multiloader and rendering helpers. A few key highlights being:
Easy config system.
Loaded as soon as you want it, easy to setup and accessible from other mods without the need for hard dependencies.
SolConfig config = MOD.createConfig("sollib/test", 1.0, builder -> builder .addObject("category", category -> category .comment("This is a comment") .add("hello", "world") .add("easyconfig", true) ) ); MOD.getLogger().info(config.get("category.hello", "")); // worldRuntime data, controlled by code.
This lets you edit datapack files at runtime, potentially allowing to change recipes depending on config values, edit or disable compat recipes if their target mods are not loaded, automatically generate models for dynamically defined items, and much more.
SolRegistries.Data.RUNTIME.addJson(Identifier.of("minecraft", "recipe/dropper.json"), json -> { if (json == null) return null; if (!config.get("recipe.copper_dropper", false)) return null; json.getAsJsonObject("key") .getAsJsonObject("#") .addProperty("item", "minecraft:copper_ingot"); return json; });Rendering helpers.
Centralized and loader agnostic. No need to make more mixins, either.
ResourceLocation TEXTURE = MOD.makeID("textures/models/sword_overlay.png"); SolClientRegistries.Render.ITEM.register(stack -> stack.is(Items.DIAMOND_SWORD) && stack.isEnchanted(), (stack, context, matrices, bufferSource, light, overlay) -> { matrices.scale(1.005f, 1.005f, 1.005f); matrices.translate(0, 0.995, 0.4975); matrices.mulPose(Axis.XP.rotationDegrees(180)); MockItemRenderer.renderItem(matrices, bufferSource, light, TEXTURE); });Simplified registry.
That you can call in the common code, complete with all the syntax sugar you need: define models, burn time, stripping results and everything about a feature at the same time.
MOD.register(BlockHolder.class, "block_block", () -> new Block(BlockBehaviour.Properties.of())) .withItem(item -> item.withFuel(200)).dropsSelf() .withSlab().withStairs().withWall() .withFlammability(20, 5);For the average user, making this page as flashy as we can won't really matter. It's only a library after all.
But if you are a developer and are curious about it, the best way to learn is to read the (wip) Wiki or join the Discord.
Compatibility
Mod Loaders
Game Versions
Recommended Gear
AffiliateHardware and extras that pair well with this mod.
As an Amazon Associate I earn from qualifying purchases.
Similar Mods
Fixed Anvil Repair Cost
💰 Patches the anvil to set the default level cost, material cost and percentage repaired.
Spice of Life Onion
A mod designed to encourage dietary variety!
Extreme sound muffler - Fabric
Forget about those nasty sounds! - Clientside sound muffler.
Nears [Fabric]
New fruits for the nether.
Archers Expansion (More RPG Classes)
Extends the Archers-Mod (RPG Series) with new content. Spell Engine Add-On
Enhanced Mob Spawners
Adds more functionality to mob spawner block. Change range from 16 to 128 blocks and more!