Modrinth · Minecraft mod
Moonlight Lib
dynamic data pack and registration, villager activities, custom map marker and a lot more
Quick answer
Which Moonlight Lib release should I use?
Moonlight Lib 1.21.1-3.3.0 targets 1.21.1 with Fabric. Installation on the client is optional. Installation on the dedicated server is optional. No extra mods listed for this file.
Where it goes
Is Moonlight Lib required on the client, server, or both?
Installation on the client is optional. Installation on the dedicated server is optional.
The source marks this as usable on both the client and server.
What else does Moonlight Lib 1.21.1-3.3.0 need?
1.21.1-3.3.0. Change the file and its required mods may change too.
This file does not list any required mods. Do not add a library just because a different file uses it.
This file does not list any required or optional mods.
Before you install it
Add Moonlight Lib without breaking your instance.
Built for Moonlight Lib 1.21.1-3.3.0. Pick another file and the loader, install side or required mods may change.
- 01
Stick to this file
Use 1.21.1-3.3.0. It targets 1.21.1 with Fabric; another release may have different loader, side or dependency requirements.
- 02
Bring the mods it needs
This file does not list any required mods. Do not add a library just because a different file uses it.
- 03
Put it on the correct side
Installation on the client is optional. Installation on the dedicated server is optional.
- 04
Pick the file you checked
Use the “Get this file” button beside 1.21.1-3.3.0. It opens that exact file at the source.
About this project
What does Moonlight Lib add?
Features of this library are:
Dynamic resource pack utilities
A set of utilities that allow creating dynamic runtime resource packs and datapacks. Also easily allows respriting and retexturing existing textures, specifically useful to add new wood based blocks.Dynamic block set registration
Allows mods to specify a block set (which can be for example a wood type). The mod then will scan all registered blocks and fill the block set up only to then allow mods to register blocks that depend on it.
This can't be easily done using traditional methods since the wood set itself depends on the registered blocks so registration must happen at a very specific time. This utility makes that task possible and easy to do. Note that it is still a form of dynamic registration which might have some drawbacks.
In a nutshell you have dynamic wood type support for your blocks. The wood set type already comes built-in.
Custom map markers:
A complete system that allows to easily implement and add map decoration and map markers as well as control every aspect of them like rendering. Also allows storing simple data inside maps data offering a couple of hooks to use it too like on item tooltip.
This system also offers a simple Data Driven implementation meaning you can easily register new markers with datapacks!Dynamic Villager AI
A helper system to easily and dynamically add tasks and modify villager schedules in a compatible way without overriding the whole existing AI. Also allows to properly add memory typesCustom first and third person animations:
Allows modders to implement a simple interface in their items to allow it to have custom third and first person animations (like crossbows).
Includes simple and easy to use interfaces that can let you control first person and third person animations as well as a callback for rendering the item itself (similar to spyglass) directly in your item classGrindstone achievement triggers:
The mod adds a custom trigger that gets called when an item is passed through a grindstone that you can call in your mods advancements jsonsSoft fluid system:
An entirely Data Driven custom virtual fluid system that goes on top of forge one and is designed to fit better in vanilla minecraft and having as main feature the ability to have multiple fluid containers items like bottles, bowls and buckets, as well as providing support for stews and drinks that can be consumed directly from a fluid tank. As opposed to the forge fluid system it has a base unit of 1 minecraft bottle (250 forge mb). The system also automatically generates all the needed fluids for already registered forge fluids and allows the user to override them or add to them easily. Fluids are virtual so they can only exist in modded container specifically for them
-Dispenser utilities:
Some code that allows to easily register dispenser behaviors without overriding already existing ones. Also comes with builtin spawn egg and block placement behaviors
Project description from Modrinth.
Pick your setup
Moonlight Lib by Minecraft version and loader
Choose the version and loader you play, then open the matching release.
1.21
2 loader builds1.20.1
3 loader buildsCheck the dependencies, then try the file in a copied instance before changing a world you care about.
Recent files
Moonlight Lib versions and loaders
1.21.1-3.3.0
moonlight-fabric-1.21.1-3.3.0.jar
26 Jul 2026
1.21.1-3.3.0
moonlight-neoforge-1.21.1-3.3.0.jar
26 Jul 2026
1.21.1-3.2.0
moonlight-neoforge-1.21.1-3.2.0.jar
25 Jul 2026
1.21.1-3.2.0
moonlight-fabric-1.21.1-3.2.0.jar
25 Jul 2026
1.21.1-3.1.3
moonlight-neoforge-1.21.1-3.1.3.jar
23 Jul 2026
1.21.1-3.1.3
moonlight-fabric-1.21.1-3.1.3.jar
23 Jul 2026
1.21.1-3.1.1
moonlight-neoforge-1.21.1-3.1.1.jar
13 Jul 2026
1.21.1-3.1.1
moonlight-fabric-1.21.1-3.1.1.jar
13 Jul 2026
1.21.1-3.1.0
moonlight-neoforge-1.21.1-3.1.0.jar
12 Jul 2026
1.21.1-3.1.0
moonlight-fabric-1.21.1-3.1.0.jar
12 Jul 2026
1.21.1-3.0.22
moonlight-fabric-1.21.1-3.0.22.jar
29 Jun 2026
1.21.1-3.0.22
moonlight-neoforge-1.21.1-3.0.22.jar
29 Jun 2026
Looking for an older file? The official Modrinth project page is in Resources.