Fabric is a lightweight modding toolchain for Minecraft: Java Edition, designed to be simple and easy-to-use. It allows developers to apply modifications ("mods") to the vanilla game, to add new features or change existing mechanics.
This documentation will walk you through modding with Fabric, from creating your first mod and setting up your environment, to advanced topics like rendering, networking, data generation and much more.
Check out the sidebar for a list of the available pages.
TIP
In case you need it at any time, a fully-working mod with all the source code of this documentation is available in the /reference folder on GitHub.
Prerequisites
Before you start modding with Fabric, you need to have some understanding of developing with Java, and of Object-Oriented Programming in general.
Here are some resources that might help you familiarize with Java and OOP:
What Does Fabric Offer?
The Fabric Project is centered around three main components:
- Fabric Loader: a flexible, platform-independent loader of mods, primarily designed for Minecraft: Java Edition
- Fabric API: a complementary set of APIs and tools mod developers can use when creating mods
- Fabric Loom: a Gradle plugin, enabling developers to easily develop and debug mods
What Does Fabric API Offer?
Fabric API provides a wide set of APIs that build on top of the vanilla functionality to allow advanced or simpler development.
For example, it provides new hooks, events, utilities such as transitive access wideners, access to internal registries such as the compostable items registry, and more.




