How to Make a Minecraft Mod: 3 Ways, With or Without Code
Make a Minecraft mod with MCreator (no code), data packs and Bedrock add-ons, or Java with Fabric or NeoForge. Which path to start with, and publishing.
You can make a Minecraft mod in three ways: with a no-code tool like MCreator, with data packs or Bedrock add-ons that change the game through JSON files and scripts, or by writing Java code against a mod loader like Fabric or NeoForge. If you’ve never programmed, start with MCreator or a data pack and make something small that works. If you already know some Java, go straight to the Fabric or NeoForge template.
Path 1: MCreator (no code)
MCreator is a free desktop app for building Java mods visually. You design a block or item, paint its texture, set its properties in forms, and wire up behavior with drag-and-drop procedure blocks. It then generates a working mod for Fabric or NeoForge that you can test with one click.
It’s a good way to learn how mods are put together (registries, textures, recipes, loot tables) before you learn syntax. The limit shows up later: complex or unusual features are hard to express in MCreator, and the code it produces isn’t how hand-written mods look. Many modders start here and move on.
Path 2: data packs and add-ons
Data packs (Java) are folders of JSON files and .mcfunction command files. Without installing anything, they can add crafting recipes, change loot tables, alter world generation and run command-based mechanics. Everyone who joins a world with a data pack gets it automatically, no loader required. If you know your way around command blocks, you’re already halfway there.
Bedrock add-ons are behavior packs (JSON plus JavaScript through Mojang’s Script API) and resource packs. They’re the only way to mod Bedrock and can be imported on Windows and mobile. Mojang’s Bedrock creator documentation on Microsoft Learn covers them.
Path 3: real Java modding
This is how the mods on Modrinth and CurseForge are made.
- Learn basic Java first. Classes, methods, inheritance and how to read an error message. Fighting Java and Minecraft at the same time is miserable. If you want gentler steps first, see learning to code with Minecraft.
- Pick a loader. Fabric and NeoForge both have good official docs and starter templates. Our Forge vs Fabric comparison explains the trade-offs; either is a good first choice.
- Set up the template. Install a JDK (Java 21 for 1.21.x; newer game versions may need newer Java, and the template says which) and IntelliJ IDEA Community Edition. Generate a template from the Fabric or NeoForge site, open it in IntelliJ and let Gradle download everything. The first import takes a while.
- Run the client from your IDE. The template has a run task that launches Minecraft with your mod loaded. If you see the title screen, your setup works.
- Make one block. Register it, give it a texture, a model, a name and a loot table so it drops itself. That single block teaches you most of the system.
- Then add a recipe, an item with custom behavior, maybe a simple mob. Read other open-source mods on GitHub to see how they solved the same problem.
Expect to rewrite parts of your mod when Minecraft updates, since Mojang changes internal code between versions. That’s normal. It’s also why mod pages list exact version support. If you’re curious why Java is the language here at all, see what Minecraft is coded in.
Publishing
Build the release .jar with Gradle’s build task and upload it to Modrinth and/or CurseForge. Both are free and are where players look. A good mod page has screenshots, a clear list of supported game versions and loaders, any dependencies, and a link to your source code or issue tracker. Pick a license so others know what they can do with your work.
For classrooms
Teachers and younger students often get more from Minecraft Education’s coding lessons than from Java modding. The Minecraft Hour of Code activities are a free, ready-made starting point.
Common questions
Can kids make Minecraft mods?
Yes. MCreator lets younger modders build blocks, items and mobs without writing code. Minecraft Education's coding lessons teach programming inside the game. Writing Java mods by hand suits teenagers who already know some programming.
What programming language are Minecraft mods written in?
Java Edition mods are written in Java (some modders use Kotlin, which runs on the same platform). Bedrock add-ons use JSON files and JavaScript through Mojang's Script API.
Do I need to pay for anything to make a mod?
No. The Fabric and NeoForge toolchains, IntelliJ IDEA Community Edition, MCreator and Bedrock's tools are all free. You only need a copy of Minecraft to test with.
Sources & verification
Facts on this page are checked against these references and in-game behavior for the stated edition(s). how we verify.
Keep reading