Recipes that live in your vault.

Kaper is a local-first recipe manager — plain markdown files, no cloud, no account. This plugin brings it into your Obsidian vault.
A markdown file with a ```kaper block becomes a structured recipe — preview, form editor, drag-to-reorder ingredients, the lot — rendered inline with the rest of your prose. No external app, no extra database, no second source of truth. Just one more thing your vault knows how to do.
You already chose Obsidian because your notes belong on your disk. Recipes deserve the same treatment. Kaper turns plain .md files into a real recipe manager:
kaper: true in frontmatter and a YAML block in the body. That's it. Anything outside the block is normal markdown — notes, intros, links, photos.When it's time to actually cook, click Cook mode in any rendered Kaper block. You'll land in kaper.me with that recipe loaded in big-text, hands-free, gesture-friendly view. No copy-paste. No app switch. Just the recipe ready to follow at the stove.

A Kaper recipe is two markers — frontmatter kaper: true and a fenced ```kaper YAML block. Anything else in the file is regular markdown.
---
kaper: true
---
A true Roman classic — no cream, no shortcuts.
```kaper
title: Classic Pasta Carbonara
servings: 2
difficulty: medium
time:
cook: 20m
tags: [italian, pasta, weeknight]
ingredients:
pasta:
- amount: 200
unit: g
name: spaghetti
sauce:
- amount: 100
unit: g
name: guanciale
sub: pancetta
steps:
- title: Bring a large pot of salted water to a boil.
note: The water should taste like the sea.
- title: Cook guanciale in a cold skillet until crispy.
duration: 8m
version: 1
```
Tips and notes go here as regular markdown.
Required keys: title, servings, ingredients, steps. Everything else is optional.

.md file.Kaper recipe files are 100% portable. The same .md file works in:
There's no sync layer to set up. Your files move through whatever you already use — iCloud, Dropbox, Syncthing, git, USB stick. Open the same folder anywhere.
This plugin makes no network requests. The only outbound link is the Cook Mode button, which opens kaper.me?from=obsidian in your browser — and even that only carries the URL parameter telling the web app where you arrived from. Your recipe files never leave your vault.
There is no Kaper server. We literally cannot read your files.
Pending submission to the Obsidian Community Plugin registry.
main.js, manifest.json, and styles.css from the latest GitHub release..obsidian/plugins/kaper/ folder.Obsidian's editor is built on CodeMirror 6. This plugin extends CodeMirror directly — recipe blocks render as block widgets inside the editor itself, sharing the same rendering pipeline as headings, embeds, and Live Preview. There's no second UI on top of the editor, just one editor that knows how to render kaper blocks.
Open-source pieces under the hood:
git clone https://github.com/nikoneex/obsidian-kaper.git
cd obsidian-kaper
npm install
npm run dev # watch mode → main.js
Symlink the repo into a test vault:
ln -s "$PWD" "/path/to/test-vault/.obsidian/plugins/kaper"
Run tests:
npm test
MIT — see LICENSE.
Want the full Kaper experience? Open any folder of recipes at kaper.me. No install. No signup.