CraftingBrowser
A searchable, tabbed crafting browser that overlays your inventory. Browse every recipe by category or by search at any crafting station, instead of scrolling one long list.Crafting Browser
Stop scrolling. Crafting Browser adds a searchable, tabbed catalogue over your inventory panel, so you can find a recipe by name or browse it by category instead of working down one long list.
A Valheim BepInEx 5 plugin built on Jotunn.
Features
- Seven tabs — All, Weapons, Tools, Armor, Food & Drink, Materials, Furniture — each with its own subcategory sidebar.
- Search filters recipes as you type.
- Three visibility modes:
Unlocked(what you've learned),Craftable Here(what this station can actually make right now), andAll. - Ingredient details on every recipe, including what you're missing.
- Real crafting, not a mock-up. The button hands the recipe back to the vanilla game, so craft timers, resource consumption, queueing multiple crafts, upgrading and cancelling all behave exactly as they normally do.
- Opens on its own when you press E at a crafting station, or anywhere via F9.
- Works with modded stations and recipes — anything registered in the game's
ObjectDB.
Requirements
- BepInExPack Valheim
- Jotunn (2.30.x)
- Valheim 1.0.16+
Installation
- Install through your mod manager (recommended).
- Manual: place
CraftingBrowser.dllandcategories.jsonintoBepInEx\plugins\CraftingBrowser\.
Both files are needed. The plugin writes a default categories.json for you if it is missing, but shipping it means the table is already correct on first launch.
How to Use
- Walk up to a crafting station and press E, or press F9 anywhere.
- Pick a tab, then a subcategory, or type in the search box.
- Switch visibility with Unlocked / Craftable Here / All.
- Click a recipe and craft it as normal.
Customising the categories
categories.json sits next to the plugin and is plain, readable JSON:
{
"tabs": [
{
"id": "weapons",
"label": "Weapons",
"categories": [
{
"id": "polearms",
"label": "Polearms & Spears",
"match": [ "poleaxe", "spear", "atgeir" ],
"itemTypes": []
}
]
}
]
}
matchholds substrings tested against the recipe's internal name — the lowercasem_namefrom the game files, not the display name.itemTypesholdsItemDrop.ItemData.ItemTypenames, for when a name match would be too broad.- Order is priority: the first match wins. That is why
polearmssits aboveaxes—"poleaxe"contains"axe", so the reverse order would swallow every polearm. - Anything that matches nothing lands in a synthetic Other bucket in the first real tab, so no recipe ever silently disappears. The count of matched versus total recipes is written to the log on startup.
Edits are picked up automatically within a couple of seconds; no restart needed. If an edit leaves the file with no tabs at all, the previous table is kept rather than replacing a working layout with an empty one.
Configuration
<BepInEx>\config\com.dfg.craftingbrowser.cfg, section General:
| Key | Default | Meaning |
|---|---|---|
Enabled |
true |
Master switch. |
OpenOnStationInteract |
true |
Open the browser when you press E at a station. |
OpenKey |
KeyCode.F9 |
Toggle the browser from anywhere. Set to None to disable. |
HotReloadCategories |
true |
Re-read categories.json every couple of seconds. |
Notes and limitations
- The vanilla inventory panel still opens underneath the browser. That is deliberate: the craft timer only advances because the game's own inventory update keeps ticking the recipe, so the panel has to exist. The browser suppresses the panel's close while it is open.
- You still need a valid crafting station even if you opened the browser with F9. The browser is a way to find things, not a way to craft without a station.
- Compatible with DFG QoL's craft-from-containers feature.
Support
If this mod has made your journey through the Tenth World a little better, consider tossing a coin into my Ko-fi jar: https://ko-fi.com/draugrforgedgaming. Your support keeps the forge hot and the mead flowing! Skål!
