Ingredient Extension API
Recipe systems in Minecraft are powerful, but vanilla ingredients are limited to a small set of matching rules. The Ingredient Extension API changes that by giving mod developers a framework to define entirely new ingredient types. If you have ever wanted a recipe that only accepts items with a specific NBT tag, or a smelting input that checks burn time, this library is the missing piece.
What the Ingredient Extension API Does
At its core, this API allows mods to register new types of Ingredients that you may use in Data Packs and similar features. Instead of relying on the default item or tag checks, developers can write custom logic that decides whether a stack is valid for a recipe. That logic can be as simple or as complex as the mod requires.
The original design goals are straightforward. Modded ingredients can simplify complex logic, improve compatibility with other mods, and handle item matching completely different to vanilla. This means fewer workarounds, less duplicated code, and recipes that behave exactly the way a pack author intends.
Common Use Cases
- An ingredient type that only accepts items with specific NBT tags, perfect for enchanted gear or custom tools.
- An ingredient that only accepts furnace fuels within a specific burn time range, useful for tiered smelting chains.
- Ingredients that match on durability, custom model data, or any component a mod decides to expose.
- Cross-mod compatibility layers where one mod's machine accepts another mod's items under shared rules.
Because the matching happens inside the ingredient itself, pack authors do not need to write dozens of near-identical recipes. One well-designed ingredient can replace an entire folder of JSON files.
Supported Versions and Loaders
The Ingredient Extension API is built for modern Minecraft releases and is distributed as a library mod. It targets the Fabric and NeoForge loaders, with builds available for recent 1.20.x and 1.21.x versions. As with most libraries, you should match the API build to your exact game version, since recipe internals change between updates.
If you are putting together a modpack, remember that this is a dependency, not a standalone content mod. It will not add items or blocks on its own. Instead, it quietly powers the recipes of any mod that lists it as a required library. If you want to download Ingredient Extension API, grab the file that matches your loader and game version, then drop it into your mods folder alongside the mods that depend on it.
Keeping libraries updated matters, and the foxygame.net launcher handles that automatically, fetching the correct Ingredient Extension API build for each profile and swapping it in when a new release appears. For players juggling several packs, that removes the guesswork of matching versions by hand.
How to Install the Ingredient Extension API
Installing a library mod is quick once you know the routine. Here is the short version for anyone wondering how to install it.
- Confirm your Minecraft version and whether you run Fabric or NeoForge.
- Install a compatible mod loader if you have not already done so.
- Place the Ingredient Extension API jar file into your mods folder.
- Add the mods that require it, then launch the game and check the log for errors.
If the game crashes on startup, the usual culprit is a version mismatch. Double-check that the API build matches your loader and game version, and that every dependent mod is up to date. A clean log with no missing dependency warnings means everything is wired correctly.
Tips for Pack Authors
When writing data packs that use custom ingredients, keep your JSON readable and comment your intent in the pack documentation. Test each ingredient with edge cases, such as empty stacks or items that almost match, to make sure the logic behaves as expected. If a recipe silently fails, the ingredient condition is almost always the reason.
Final Thoughts
The Ingredient Extension API is one of those quiet utilities that makes modded Minecraft feel more coherent. It gives developers a clean way to express matching rules, and it gives pack authors recipes that finally do what they were meant to do. Whether you are building a tech-heavy pack or a small vanilla-plus setup, this library is worth having in your load order. Check your loader, match your version, and let the API handle the rest.