JEI Crafting
Addon Overview
This addon provides players with a unique ability to instantly craft items directly from the JEI interface. When you hover the cursor over any item in the JEI list or bookmarks and middle-click, you receive the finished item while automatically consuming the required ingredients from your inventory.
Note: Supports compatibility with JEI+EMI and TMRV+EMI combinations, though some minor conflicts may occur very rarely when full cheating mode is active.

Practical Applications
Many Minecraft recipes become frustrating due to their complexity and multi-step nature. This is especially true for colored building blocks and decorative elements that require multiple successive crafting operations.
Imagine building a house using 5 different concrete colors. In vanilla Minecraft, you'd need to stockpile dyes and sand, and if you run out - interrupt construction to rush to a crafting table. With this addon, you can simply quick-create the desired concrete color, consuming basic components.
Same applies to complex machinery. In Create mod, your inventory fills with propellers, brass arms, mixers - items used in only a couple of recipes. When rebuilding your factory, you can disassemble mechanisms back into raw materials and transform them into other devices.

Recipe Configuration
Recipes are configurable through datapacks using familiar JSON structure:
{
"type": "jei_crafting:jei_crafting",
"output": {
"id": "minecraft:smoker",
"count": 1
},
"ingredients": [
{
"ingredient": {
"tag": "minecraft:logs"
},
"count": 4
},
{
"ingredient": {
"tag": "c:cobblestones"
},
"count": 8
}
],
"uncraftsTo": [
{
"id": "minecraft:oak_wood",
"count": 4
},
{
"id": "minecraft:cobblestone",
"count": 8
}
]
}
Recipe adjusts output stack amounts with smart controls - defaults to 8 items per craft but tweakable via config/jei/_crafting-client.toml settings.
Tip: Omit
uncraftsTofield to prevent item recycling back to components. Completely removeingredientssection creates unlimited free recipes where items spawn for no cost.
{
"type": "jei_crafting:jei_crafting",
"output": {
"id": "minecraft:bedrock",
"count": 1
}
}
The animated demo shows quick-crafting workflow:

Advanced Features
Version 1.1.0 incorporated crafting timing control through craftsInTicks parameter for balancing mechanics.
Watch the craft duration in action, available as embedded video support.
KubeJS integration since v1.2.0 enables runtime recipe customization, including output-override functionality:
ServerEvents.recipes(event => {
event.custom({
type: "jei_crafting:jei_crafting",
output: Item.of("minecraft:bedrock"),
craftInTicks: 10
})
event.custom({
type: "jei_crafting:jei_crafting",
output: Item.of('minecraft:copper_block'),
ingredients: [{
ingredient: Ingredient.of('minecraft:copper_ingot'),
count: 9,
}],
uncraftsTo: [
Item.of('minecraft:copper_ingot', 8)
],
craftInTicks: 20
}).id('kubejs:foobar')
})
// Cancel crafting with notification sounds using event handlers
JeiCraftingEvents.itemCrafting('kubejs:foobar', event=>{
// Transform crafting output dynamically
event.recipeOutput = Item.of("minecraft:copper_block[custom_name='\"Sussy baka\"']")
})
JeiCraftingEvents.itemUncrafting('kubejs:foobar', event=>{
// Replace disassembly results
event.recipeOutput = [Item.of("minecraft:copper_block[custom_name='\"Sussy baka\"']")]
})