Skip to content

Releases: Asgarrrr/obsidian-recipe-table

0.3.0

Choose a tag to compare

@github-actions github-actions released this 31 Jul 09:35
c975bc2
feat: click an ingredient to search the vault for it

Wikilinks were the wrong primary path. [[Parmesan]] only pays off for
someone who already keeps a note per ingredient, and nobody does; every
recipe just accumulates unresolved links.

Searching needs no setup and works on the vault you already have. Clicking
an ingredient opens the vault search with the quantity stripped, so
'400 g of minced beef' searches for "minced beef". The slot was free:
operations tick, ingredients did nothing.

ingredient.ts guesses where the quantity ends, which is deliberate and not
in tension with scaffold.ts refusing to guess the tree. A wrong search term
costs a broader search the user edits; a wrong tree would be silently
wrong. Guess only where a mistake is visible and cheap.

Wikilinks still work for those who want them, and a link inside a cell
navigates rather than searching or ticking.

Adds a full lasagne example to the README: two preparation steps, three
components, an assembly step consuming two of them, and two operations
sharing a column.

0.2.0

Choose a tag to compare

@github-actions github-actions released this 31 Jul 09:19
7b59b7f
feat: wikilinks, a scaffolding command and touch targets

Three gaps found by comparing the plugin against the five recipe plugins
already in the community list.

Cells now render through Obsidian's markdown renderer, so an ingredient can
be [[Mascarpone]] and carry a hover preview and a backlink. This is the one
thing those plugins cannot copy cheaply: they all treat ingredients as
text, so none of them feed the vault graph. The renderer is injected as a
CellRenderer rather than imported, which keeps render.ts free of the
plugin API and unit-testable. Clicking a link inside a step now follows the
link instead of ticking the step off.

A new command scaffolds a recipe block from pasted prose. Transcription is
the adoption barrier here — every rival reads recipes you already have,
this one asks you to restructure them. The scaffold converts fences,
markers, numbering and headings, and refuses to guess which step consumes
which ingredient: 'pour in 3-4 oz of your milk' carries a quantity and is
still a step, so a heuristic sure enough to build the tree would sometimes
build it wrong in silence. The output always parses, so a table appears
immediately and gets refined from there.

Tickable cells measured 34px against the 44px touch target every platform
asks for; under a coarse pointer they now use height as a floor, measured
at 44px in Obsidian's mobile emulation.

0.1.0

Choose a tag to compare

@github-actions github-actions released this 31 Jul 02:14
bb46877
feat: make references additive and cover the untested modules

A reference now adds to the running chain instead of replacing it. The
salted maple coffee recipe exposed the old rule: 'pour on top (coffee)'
sits mid-chain, so cancelling the chain silently dropped the ice and the
milk from the table. Chaining is now unconditional, which also makes the
'step leads nowhere' error unreachable, so it is gone.

Render and cooking move to plain DOM against ownerDocument. They no longer
import Obsidian, which makes them testable under happy-dom and leaves
main.ts as the only module touching the plugin API. Adds 14 tests over
attribute emission, tickability, keyboard handling and error rendering,
plus the three parser branches that had none.

Repo cleanup for publication: the LICENSE still carried Dynalist's
copyright from the sample plugin, AGENTS.md still described that sample,
CI never ran the tests, and the design doc sat under a tool-specific path.

Fixes a .gitignore bug that mattered: the unanchored 'styles.css' pattern
also matched src/styles.css, so the stylesheet had never been committed
and a release would have shipped an unstyled table.