====== 3rd party library mods ====== This is a list of third party library mods that provide various utilities. If you've created a library, add it to the list if you have edit permissions (try to keep it in alphabetical order), or drag and drop the information you need onto the wiki. channel [[https://discord.gg/v6v4pMv|Fabric Discord server]] otherwise. ===== Data Generation ===== ^ Name and Link ^ Description ^ Maintainer ^ Minecraft Versions ^ |[[https://github.com/Devan-Kerman/ARRP|ARRP]] | Creates resources and assets during runtime | HalfOf2 | 1.14.2-1.20.1 | |[[https://github.com/natanfudge/artifice|Artifice]] | Generated data/asset files and virtual resource pack API | Fudge | | |[[https://github.com/SolidBlock-cn/BRRP|BRRP]] | Fork of ARRP, with more utilities | based on ARRP | 1.16.2-1.21.1 | |[[https://github.com/spoorn/SpoornPacks/wiki | SpoornPacks]] | Simple-to-use, single-line APIs for generating resource files, registration, and automatic injection | spoorn | 1.18.1-1.19.3 | ===== Configuration ===== ^ Name and Link ^ Description ^ Maintainer ^ Minecraft Versions ^ | [[https://gitlab.com/sargunv-mc-mods/auto-config | Auto Config]] | Annotation based configuration API | sargunv | 1.14 | | [[https://github.com/shedaniel/AutoConfig | Auto Config Updated]] | Fork of AutoConfig for updated MC versions | sargunv, shedaniel | 1.14-1.16, 1.18.1 | | [[https://github.com/Lortseam/completeconfig | Complete Config]] | Flexible configuration API | Lortseam | 1.16+ | | [[https://github.com/zml2008/confabricate | Confabricate]] | Fabric wrapper of Sponge's Configurate with new utilities | zml2008 | 1.15-1.18 | | [[https://github.com/DaemonicLabs/fiber | Fiber]] | Configuration system | zeroeightysix, Pyrofab | Any | | [[https://github.com/fzzyhmstrs/fconfig | Fzzy Config]] | Powerful config library with GUIs, validation, auto-syncing, and more | fzzyhmstrs | 1.20.1, 1.20.5+ | | [[https://github.com/TeamMidnightDust/MidnightLib/wiki/Using-MidnightConfig | Midnightlib]] | General purpose lightweight config | TeamMidnightDust | 1.18+ | | [[https://github.com/Draylar/omega-config | Omega Config]] | Easy-to-use Config with robust features and GUI support | Draylar, Frqnny | 1.16-1.18 | | [[https://github.com/OroArmor/oro-config | Oro Config]] | Light-weight JSON config with command and Cloth Config support | OroArmor | 1.16 | | [[https://github.com/wisp-forest/owo-lib | oωo-config]] | Annotation-driven, flexible configuration library with automatic, yet customizable screen generation and built-in ModMenu integration | glisco | 1.17+ | | [[https://github.com/RedstoneParadox/paradox-config | Paradox Config]] | Kotlin based configuration API | RedstoneParadox | 1.17 | | [[https://github.com/magistermaks/fabric-simplelibs/tree/master/simple-config | Simple Config]] | Single-file simple to use config lib | magistermaks | | | [[https://github.com/Siphalor/tweed-api | Tweed]] | Configuration API allowing automation and synchronization | Siphalor | 1.14+ | ===== Rendering===== ^ Name and Link ^ Description ^ Maintainer ^ Minecraft Versions ^ |[[https://github.com/kosmx/bendy-lib|BendyLib]]|API to swap and bend cuboids in existing and in new entities|KosmX| | |[[https://github.com/Emafire003/ColoredGlowLib|ColoredGlowLib]]|API that renders glowing effect colors as RGB instead of fixed values based on teams|Emafire003| | |[[https://github.com/vampire-studios/Customized-Astral-Body|Custom Astral Body]]|API to control dimension sky, moon, and sun rendering|Vampire Studios| | |[[https://github.com/bernie-g/geckolib/wiki/Getting-Started|GeckoLib]]|Powerful WYSIWYG animation library for use with animations made in blockbench.|bernie-g| | |[[https://github.com/grondag/json-model-extensions|JMX]]|Adds increased functionality to making more advanced JSON Models with extra customizability|grondag| | |[[https://github.com/magistermaks/mod-jmxl|JMXL]]|Simple library bringing extensions to the Minecraft model format, similar to JMX but supports Sodium and friends|magistermaks| | |[[https://github.com/RedstoneParadox/Marionette|Marionette]]|Animation API for creating and animating entity models|RedstoneParadox| | |[[https://github.com/frqnny/myron|Myron]]|OBJ model loading library|Frqnny| | |[[https://github.com/KosmX/minecraftPlayerAnimator|Player Animator]]|Player Animation using keyframes or programmed animations|KosmX| | |[[https://github.com/0x3C50/Renderer|Renderer]]|An easy to use rendering library for modern Fabric|0x150| | |[[https://github.com/Ladysnake/Satin|Satin]]|Simple wrapper for Post Process Shaders|Pyrofab| | |[[https://github.com/TeamFelnull/SpecialModelLoader|Special Model Loader]]|OBJ model loading library.| morimori0317 | 1.19.3, 1.19.4 | |[[https://github.com/fxmorin/MoreCulling|MoreCulling]]|API to change how blocks are culled to improve performance|fxmorin| | ===== Vanilla expansion ===== ^ Name and Link ^ Description ^ Maintainer ^ |[[https://github.com/kvverti/banner-plus-plus|Banner++]]|Allows mods to add new banner patterns|kvverti| |[[https://github.com/TheIllusiveC4/Caelus|Caelus]]|API to provide developers access to elytra flight mechanics|TheIllusiveC4| |[[https://github.com/florensie/ExpandAbility|ExpandAbility]]|Provides increased control over vanilla effects and abilities|Florens| |[[https://github.com/CrimsonDawn45/Fabric-Shield-Lib|Fabric Shield Lib]]|Library to add new shields cleanly without mixins|CrimsonDawn45| |[[https://gitgud.io/deltanedas/gourmet|Gourmet]]|Allows making items edible|deltanedas| |[[https://github.com/Virtuoel/Statement|Statement]]|Extra configurability in manipulating blockstates of already existing blocks|Virtuoel| |[[https://github.com/Linguardium/WanderingTradesmen|Wandering Tradesmen]]|Allows you to make your own custom tradesman using LibCD scripts!|Lingardium| ===== GUI ===== ^ Name and Link ^ Description ^ Maintainer ^ |[[https://github.com/CottonMC/LibGui|LibGui]]|Graphical User Interface (GUI) toolkit|Cotton| |[[https://github.com/RedstoneParadox/OakTree|Oak Tree]]|Graphical User Interface (GUI) toolkit|RedstoneParadox| |[[https://github.com/wisp-forest/owo-lib|oωo-ui]]|Modern, high-performance dynamic GUI framework with many built-in components and a rich XML-based design and templating language|glisco| |[[https://github.com/Patbox/sgui|SGUI]]|Graphical User Interface (GUI) toolkit for server-side mods|Patbox| |[[https://github.com/LambdAurora/SpruceUI|SpruceUI]]|Graphical User Interface (GUI) toolkit|LambdAurora| ===== Utils===== ^ Name and Link ^ Description ^ Maintainer ^ |[[https://github.com/RedGrapefruit09/Arctree|Arctree]]|Eases the awful process of creating trees in Minecraft|RedGrapefruit09| |[[https://ladysnake.org/wiki/blabber|Blabber]]|Data-driven RPG-like dialogues with fully customizable actions|Pyrofab| |[[https://ladysnake.org/wiki/cardinal-components-api|Cardinal Components API]]|Dynamic data attachments for various game objects (Blocks, Entities, Worlds...)|Up, Pyrofab| |[[https://github.com/Kneelawk/Codextra|Codextra]]|Minecraft Codec extras and utilities, including Ops-Attachments|Kneelawk| | [[https://github.com/gbl/CrowdinTranslate|CrowdinTranslate]] | Pulls translated language files from Crowdin and renames them to MC conventions. Can work at compile time or runtime. | Giselbaer | |[[https://github.com/Emafire003/CustomBrewRecipes/|CustomBrewRecipes]]|An API useful for making non-potion brewing recipes with NBT support|Emafire003| |[[https://github.com/TheIllusiveC4/Curios|Curios]]|A flexible and expandable accessory/equipment API|TheIllusiveC4| |[[https://gitea.thebrokenrail.com/TheBrokenRail/FreshCoffee.git|FreshCoffee]]|A library mod that ensures you are running a supported version of Java and can install a supported one if you are not.|TheBrokenRail| |[[https://github.com/RedGrapefruit09/ItemNBT|ItemNBT]]|Greatly enhances the item NBT features in the game with the help of reflection and dark magic|RedGrapefruit09| |[[https://github.com/BoogieMonster1O1/libcbe|LibCBE]]|Allows conditional creation of block entities|BoogieMonster1O1| |[[https://github.com/AlexIIL/LibMultiPart|LibMultiPart]]|Adding multiple parts to a single (custom) block|AlexIIL| |[[https://github.com/BoogieMonster1O1/LibSchem|LibSchem]]|A schematic parser and placer that supports the sponge schematic v2 schema|BoogieMonster1O1| |[[https://github.com/Ladysnake/Locki|Locki]]|An API for locking slots in a player's inventory|Pyrofab| |[[https://github.com/Draylar/magna|Magna]]|Easily create tools that breaks more than 1 block at a time|Draylar| |[[https://github.com/DimensionalDevelopment/Matrix|Matrix]]|Annotation based item/block registering library|Dimensional Development| |[[https://github.com/FoundationGames/MealAPI|Meal API]]|Add foods that are more "filling"|FoundationGames| |[[https://github.com/GlassPane/Mesh|Mesh]]|All-round utility library, automatic registration, recipe generation, multiblocks (WIP) |UpcraftLP| |[[https://github.com/Siphalor/nbt-crafting|NBT Crafting]]|Extends the JSON recipe system to work with NBT data|Siphalor| |[[https://github.com/Dev0Louis/Nebula|Nebula]]|Nebula is an Library for Mana and Spells. |Louis| |[[https://github.com/wisp-forest/owo-lib|oωo-lib]]|Flexible automatic registration, side-agnostic particle systems, custom item groups,\\ intuitive networking stack with automatic serialization and other general utility functions aiming to reduce code verbosity|glisco| |[[https://github.com/Virtuoel/Pehkui|Pehkui]]|Manipulates the size of entities|Virtuoel| |[[https://www.curseforge.com/minecraft/mc-mods/piglib|Piglib]]|Allows adding to the items Piglins will accept for bartering, as well as armor that will prevent them becoming aggressive, through tags|Shnupbups| |[[https://github.com/LazuriteMC/Rayon|Rayon]]|Rigid body simulation for Minecraft|Lazurite| |[[https://github.com/JamiesWhiteShirt/reach-entity-attributes|Reach Entity Attributes]]|Entity attributes to modify reach distance and attack range|JamiesWhiteShirt| |[[https://github.com/MoriyaShiine/size-entity-attributes|Size Entity Attribute Attributes]]|Entity attributes to modify width and height dimensions|MoriyaShiine| |[[https://github.com/Emafire003/StructurePlacerAPI/|StructurePlacerAPI]]|An API to spawn NBT structures without adding them to world gen |Emafire003| |[[https://github.com/Vatuu/tesseract|Tesseract]]|World API with optimization and extra control|Vatuu Komalia| |[[https://github.com/Virtuoel/Towelette|Towelette]]|API to easily allow mods to make their blocks waterloggable|Virtuoel| |[[https://github.com/emilyploszaj/trinkets|Trinkets]]|Data driven accessory api|Emi| |[[https://github.com/Patbox/TextPlaceholderAPI|Text Placeholder API]]|It's a small, jij-able API that allows creation and parsing of placeholders Minecraft Text Components. It also includes simple, general usage text format indented for simplifying user input in configs/chats/etc.|Patbox| |[[https://github.com/Patbox/PlayerDataAPI|Player Data API]]|Micro library for storing additional data for players, that isn't stored with main entity NBT.|Patbox| |[[https://github.com/Patbox/HologramAPI|Hologram API]]|It's a small, jij-able library for creating server side holograms showing text, items or even entities. They can be fully interactive with different actions depending on where players click.|Patbox| |[[https://github.com/Patbox/map-canvas-api|Map Canvas API]]|Simple, server side api for drawing on maps with runtime only state and no id collisions! It can be used from own thread for better effects/more fps.|Patbox| |[[https://github.com/Patbox/SidebarAPI|Sidebar API]]|It's a small, jij-able library for creation of server side sidebars (scoreboards) with full support of Minecraft's text components (which allow custom fonts/colors and unlimited line length).|Patbox| ===== Compatibility ===== ^ Name and Link ^ Description ^ Maintainer ^ |[[https://github.com/adriantodt/FallFlyingLib|FallFlyingLib]]|Compatibility library allowing multiple mods to implement their own Elytra alternatives|AdrianTodt| |[[https://github.com/AlexIIL/LibBlockAttributes|LibBlockAttributes]]|Block and Item attributes, item management, and fluid management|AlexIIL| |[[https://github.com/Ladysnake/PlayerAbilityLib|PlayerAbilityLib]]|Compatibility library allowing multiple mods to interact with PlayerAbilities|Pyrofab| |[[https://github.com/Zundrel/Wrenchable|Wrenchable]]|Compatibility library allowing mods to make their wrenches compatible with other mods|Zundrel| |[[https://github.com/Patbox/common-protection-api|Common Protection API]]|This is simple api for mods to check if action is allowed in a region. Its main idea is to have one single common api for checking against multiple mods. For claim/protection mods, it adds simple handler system you can implement.|Patbox| ==== Energy ==== ^ Name and Link ^ Description ^ Maintainer ^ |[[https://github.com/CottonMC/CottonEnergy|CottonEnergy]]|Energy API|Cotton| |[[https://jenkins.thebrokenrail.com/job/EnergonRelics/job/master/JavaDoc|EnergonRelics API]]|Energy API For The Mod [[https://www.curseforge.com/minecraft/mc-mods/energonrelics|EnergonRelics]]|TheBrokenRail| |[[https://github.com/TechReborn/Energy|Energy]]|The standard Energy API created and used by Team Reborn|Team Reborn, modmuss50| |[[https://git.sr.ht/~hutzdog/libpow|LibPow]]|Flavoured energy API designed for flexibility|enderger| To answer a common question about the Energy API: If you are just looking for the API that is most commonly used because you want to support most other energy-using mods, you should use TechReborn Energy. However, this can lead to balancing problems because different mods take different approaches to how much power something costs. So if you care about balancing, or if you want to protect your energy system from other mods, or if you just don't care about working capacity between mods, take a look at the other options and choose the one that suits your needs. ===== Network ===== ^ Name and Link ^ Description ^ Maintainer ^ |[[https://github.com/natanfudge/Fabric-Drawer/blob/master/README.md|Drawer]]|Automatic NBT and PacketByteBuf serializer/deserializer (Kotlin only)|Fudge| |[[https://github.com/Hephaestus-Dev/FibLib|FibLib]]|API for sending false data to clients|Haven King| |[[https://github.com/AlexIIL/LibNetworkStack|LibNetworkStack]]|Object-based networking, auto-net id assignment, buffered packets|AlexIIL| ===== Other ===== ^ Name and Link ^ Description ^ Maintainer ^ |[[https://github.com/Devan-Kerman/GrossFabricHacks|GrossFabricHacks]]|Adds hooks for very early initialization, mass class transformation and other hacks|HalfOf2| |[[https://github.com/natanfudge/Working-Scheduler|Working Scheduler]]|A working and comprehensive tick scheduler|Fudge| |[[https://github.com/Patbox/polymer|Polymer]]|It's a library for creating server side content, that work for player's without mods or (required) resource packs! You can create blocks, items and entities, that not only will work fully on server side (and singleplayer), but also are represented on server the same as normal (vanilla/modded) ones.|Patbox|