Recipe Box

by Adam Tommasi
5
4
3
2
1
Score: 53/100

Description

Recipe management plugin for Obsidian

Reviews

No reviews yet.

Stats

9
stars
1,732
downloads
3
forks
87
days
1
days
2
days
11
total PRs
0
open PRs
1
closed PRs
10
merged PRs
11
total issues
0
open issues
11
closed issues
203
commits

Latest Version

2 days ago

Changelog

RecipeBox v0.2.2

RecipeBox v0.2.2 is a substantial release focused on making it easier to bring your recipes into Obsidian, edit them once they're there, and work with them naturally inside your vault.

This release introduces bulk recipe importing, in-place recipe editing, wikilinks with hover previews, major improvements to ingredient parsing and scaling, better metric formatting, localized ingredient units, and refinements throughout filtering and exports.

Highlights

📦 Import your existing recipe collection

Moving to RecipeBox from another recipe manager just got considerably easier.

v0.2.2 introduces bulk recipe importing, allowing you to bring an existing collection into your vault instead of recreating recipes one at a time.

RecipeBox can import recipes from:

  • Mealie exports

  • schema.org Recipe JSON

  • Individual .json files

  • Collections packaged inside .zip files

The importer can also bring recipe images into your vault when they are available.

Choose your files, select the destination folder, decide how RecipeBox should handle naming conflicts, and let RecipeBox turn the collection into normal Markdown recipe notes.

The importer includes pre-import validation, progress reporting, error handling, and support for continuing a batch even when an individual recipe cannot be imported.

Existing recipes can be skipped or kept alongside imported copies instead of being silently overwritten.

For anyone with more than twelve recipes and an understandable unwillingness to spend Saturday manually copy-pasting them, this one is rather important.

✏️ Edit recipes directly in RecipeBox

You can now edit recipes without jumping back and forth to the underlying Markdown file.

v0.2.2 adds a dedicated Edit Recipe modal and form, making common recipe updates faster while keeping you inside the RecipeBox workflow.

RecipeBox is increasingly becoming a complete interface for managing your collection, while your recipes remain normal Markdown notes underneath.

Recipe views now support Obsidian wikilinks, including:

  • Link navigation

  • Hover previews

  • Improved internal link handling

Recipes can now connect much more naturally to the rest of your vault.

Link an ingredient to a pantry note. Reference a cooking technique. Connect recipes to meal plans, source notes, variations, cuisines, or whatever strange organizational rabbit hole your vault has become.

You know who you are.

🥄 Smarter ingredient parsing

Ingredient parsing received a major upgrade.

RecipeBox now supports ingredient ranges, including formats such as:

  • 1-2 tbsp olive oil

  • 2-3 cloves garlic

  • 100-150 g flour

Ranges are supported throughout:

  • Parsing

  • Recipe rendering

  • Scaling

  • Ingredient checklists

  • Exports

When a recipe is scaled, both sides of the range scale appropriately.

RecipeBox also now supports secondary measurements, providing better handling of recipes that include alternate quantities or measurement systems.

⚖️ Improved metric and decimal formatting

Metric quantities can now use decimal formatting where appropriate instead of being forced into fraction-style output.

Quantity formatting has also been made more consistent across:

  • Recipe views

  • Ingredient checklists

  • Scaling

  • Exports

Additional test coverage was added around metric formatting behavior.

🌍 Localized ingredient units

v0.2.2 introduces localized ingredient unit mappings and configurable filler words.

This gives the ingredient parser a stronger foundation for handling regional terminology, translated recipes, and different ways of expressing measurements.

🧠 Better handling of natural ingredient text

Ingredient parsing now supports multiple filler words along with improved unit normalization.

That means RecipeBox is becoming more tolerant of the wonderfully inconsistent way humans actually write recipes instead of requiring every ingredient to conform to one pristine machine-friendly format.

Because apparently centuries of cooking were not enough time for us to agree on how to write "two tablespoons."

🔎 Improved filtering

Field filter behavior has been refined along with improvements to the stats row shown while browsing filtered recipe collections.

The result is more consistent filtering and cleaner feedback when working with larger collections.

📤 Better exports

The ingredient improvements in this release carry through more consistently into exports.

Exports now better preserve:

  • Ingredient ranges

  • Secondary measurements

  • Units

  • Updated quantity formatting

The goal is for RecipeBox to preserve what your recipe actually says throughout parsing, scaling, display, and export.

Compatibility

RecipeBox v0.2.2 requires Obsidian 1.13.0 or newer.

Make sure Obsidian is up to date before upgrading.

What's Changed

New features

  • Added bulk recipe importing from files

  • Added support for Mealie recipe exports

  • Added support for schema.org Recipe JSON

  • Added .json and .zip recipe collection imports

  • Added image handling for imported recipe collections

  • Added import destination and conflict handling options

  • Added import validation, progress reporting, and per-recipe error handling

  • Added an Edit Recipe modal and form for in-place recipe editing

  • Expanded recipe editing capabilities and documentation

  • Added wikilink support with hover previews and link handling in recipe views

Ingredient parsing and scaling

  • Added ingredient range support

  • Added secondary measurement support

  • Extended range and secondary measurement support across parsing, scaling, rendering, and exports

  • Improved decimal formatting for metric units

  • Improved ingredient quantity formatting in exports and checklists

  • Added localized ingredient unit mappings

  • Added configurable ingredient filler word support

  • Improved multi-filler-word parsing

  • Improved unit normalization

Interface improvements

  • Enhanced field filtering

  • Improved stats row rendering

Compatibility

  • Updated the minimum supported Obsidian version to 1.13.0

Upgrade Notes

There are no known migration steps required for existing recipes.

The main compatibility change is the new minimum requirement of Obsidian 1.13.0.


v0.2.2 is a pretty meaningful step forward for RecipeBox.

You can now bring an existing recipe collection into Obsidian in bulk, edit recipes without leaving RecipeBox, connect them naturally to the rest of your vault, and rely on a significantly smarter ingredient parser once they're there.

Less importing by hand. Less fighting the parser. Less bouncing between views. More cooking.

README file from

Github

Recipe Box

CI GitHub release Obsidian Downloads License


Plan meals, build grocery lists, and view recipes as interactive cards, all stored as plain markdown in your vault.

Recipe Box treats recipes the same way Obsidian treats everything else: as notes you own. Meal plans and grocery lists are markdown files too, so you can edit them by hand, query them with Dataview or Bases, and sync them with whatever sync solution you already use.

🎉 NEW! Import your recipe collection from Mealie and other apps

Feature Highlights

🍽️ Recipe view

Open any recipe note and Recipe Box renders it as an interactive card with a scalable ingredient list, step-by-step instructions with inline timers, and nutrition at a glance. The header is fully configurable, allowing you to surface any frontmatter property as a badge, write custom formula expressions, or stick with the defaults. Scale a recipe up or down and every ingredient amount updates automatically.

[!TIP] Multiple recipe view layouts are available: Choose between a single column or two column split for desktop; and a dedicated mobile view.

📅 Meal planning

Drag recipes onto a weekly planner, drop files straight from the file explorer, or add custom meals without a recipe note attached. A queue holds anything unscheduled. The plan lives in a plain markdown note you can read and edit directly, there's no hidden database.

🎲 Meal suggestions

The suggester does more than shuffle your recipe list. You can use it to build named modes with custom filters (cuisine, prep time, allergens, or any frontmatter field) and scoring rules (favor highest rated, least recently cooked, never made, or any combination). Run a mode for dinner, run another for lunch. Select results and schedule them across the week in one step.

🛒 Grocery list

Ingredients from your meal plan are consolidated automatically... quantities summed, duplicates merged... and then grouped by category, recipe, or source. Add ad-hoc items easily, check things off as you shop, and export in multiple formats. The list is a markdown note, editable by hand or through the plugin.

✏️ Recipe editing

Fix a recipe without leaving the card. Click the Ingredients or Instructions heading, or use the Edit recipe button, to open a structured editor: change or remove entries, drag to reorder (or Alt+Up/Down), move items between groups, and add, rename, or delete groups. Times, servings, image, notes, and nutrition are editable too, and the note can be renamed from the same dialog. Only what you change is written, so the rest of your note is left untouched. Sections with content the editor can't safely represent (paragraphs, nested lists, multi-line steps) offer an Open as Markdown shortcut instead.

📓 Cook history

Mark a recipe as cooked and Recipe Box logs the date, optional notes, and a photo. History is stored as a structured array in frontmatter, making it queryable with Dataview or Obsidian Bases. Find every recipe you cooked last month, your most-made meals, or anything you haven't made in over a month -- all from a standard Dataview query.

📥 Recipe import

Paste a URL from most recipe sites and Recipe Box extracts ingredients, instructions, and metadata into a new note using the built in recipe template, or you can set your own template to use. Plain text and pasted captions work too, for recipes that don't come from a structured page.

Moving from another recipe app? Import your whole collection at once from Mealie, or from any app that exports schema.org Recipe JSON. Pick the exported .json or .zip files, choose a folder, and Recipe Box turns each recipe into a note, images included. Existing notes are never overwritten.

🔗 Recipe sharing

Share any recipe with a link, no account or app required on the other end. Recipe Box generates a clean, read-only page with the ingredients, instructions, and photo, styled to feel like Obsidian rather than a generic web page, with automatic dark mode. Set an expiry of 7, 30, or 90 days, and revoke a share instantly if you change your mind. Nothing beyond the recipe itself leaves your vault, no cook history, no other notes, no vault structure.

📱 Mobile

A tab-based layout with swipe navigation keeps the recipe view clean on small screens. Cook History gets its own tab. Long-press to drag recipes on the meal plan. A cook mode toggle keeps your screen awake while you're at the stove.

⏱️ Timers

Duration phrases in your instructions ("bake for 30 minutes") become tappable timer buttons. Run several at once, drag them anywhere on screen, and get an audio alert when they finish.

Installation

Obsidian Community Direcotry

Recipe Box is available in the Obsidian community plugin directory and can be installed through the in-app browser.

You can also view the plugin directory listing by visiting https://community.obsidian.md/plugins/recipe-box

BRAT (for beta releases)

  1. Install the BRAT plugin from the Obsidian community plugins directory and enable it.
  2. Open BRAT settings and click Add Beta Plugin.
  3. Enter AdamArcane/obsidian-recipebox and click Add Plugin.
  4. Enable Recipe Box in Settings → Community plugins.

BRAT will notify you when new beta releases are available and can update the plugin automatically.

Manual

  1. Download main.js, manifest.json, and styles.css from the latest release.
  2. Create the folder <your vault>/.obsidian/plugins/recipe-box/ if it does not exist.
  3. Copy the three files into that folder.
  4. Reload Obsidian and enable Recipe Box in Settings → Community plugins.

Getting started

Drop a note into the Recipes folder (created automatically the first time you enable the plugin), structure ingredients and instructions under headings of your choice, or using RecipeMD format, and open it. Recipe Box detects any note in that folder as a recipe and offers to switch into recipe view, no frontmatter required.

Want recipes somewhere else, or mixed in with other notes? Change the recipe folder, or set a recipe type value (recipe, for example, matched against a frontmatter property) to narrow detection further, under Settings → Recipe Box → Recipe library.

[!NOTE] Notes written in RecipeMD format, ingredients and instructions separated by thematic breaks (---) instead of headings, work the same way with no extra setup. An explicit heading always takes precedence when both are present.

License

GPL-3.0-or-later