by Brewlang
Show brew code blocks as coffee recipe cards, with the problems Brewlang finds in them.
Brewlang for Obsidian
Write coffee recipes in your notes with Brewlang, and read them as recipe cards.
```brew
---
title: My morning V60
---
@V60 15g 250g 94°C
grind medium-fine
/rinse
0:00 50g ~10s bloom center
0:45 150g ~15s spiral
1:30 250g ~20s center
target 3:00
```
In reading view and live preview, the block becomes a card: the title, the specs and the ratio, the preparation, the steps and the target. When Brewlang finds a problem, the card shows the recipe as written and the problems are listed under it, with their line in the block and what to fix:
Line 3: The scale is already at 50g: pour to a higher total, or add water with '+'
While you edit a block, the recipe is colored, its problems are underlined (hover for the message), and Obsidian suggests brewers after @, actions after /, grind sizes, pour qualifiers and units as you type.
The card follows your theme, light or dark. In Settings → Brewlang, pick another theme (Paper, Night, Roaster), an accent color or a size (small or medium), and show weights in g or oz and temperatures in °C or °F: only the card changes, never the recipe. For more, a CSS snippet can set any of the card's --brew-* variables on .brewlang-block .brew-card, like the playground's "Copy CSS" gives them.
Writing recipes explains the format; the playground lets you try it.
Brewlang is at v0: the syntax can still change.
Install
Until the plugin is in the community catalog, install it by hand:
- Download
main.js,manifest.jsonandstyles.cssfrom the latest release. - Put them in a
brewlangfolder in your vault's.obsidian/plugins/folder. - In Obsidian, open Settings → Community plugins, and turn on Brewlang.
Development
The plugin bundles the language from the brewlang repo, cloned next to this one and built:
git clone https://github.com/brewlang/brewlang ../brewlang
(cd ../brewlang && npm install && npm run build)
npm install
npm test # the block rendering
npm run build # main.js and styles.css
npm run dev # rebuild on change
To try it, link this folder into a test vault: ln -s "$PWD" /path/to/vault/.obsidian/plugins/brewlang, then reload Obsidian.
Release: bump version in manifest.json and package.json, add it to versions.json with the minimum Obsidian version, then push a tag with the same name (0.1.1, no v). The release workflow builds the plugin and attaches the three files.
License
For plugin developers
Search results and similarity scores are powered by semantic analysis of your plugin's README. If your plugin isn't appearing for searches you'd expect, try updating your README to clearly describe your plugin's purpose, features, and use cases.