v0.5.0 — Reactive Bindings
Two-way binding between rendered preview and the .grid data section.
Inline cell binding via Jinja helper:
<td>{{ cell("B2") }}</td> <!-- editable -->
<td>{{ cell("B2@sales") }}</td> <!-- cross-sheet -->Form-style bind: blocks:
bind: input
cell: B2
type: number
bind: select
cell: A2
options: North, South, East, West
- POST /api/cell-edit accepts
{cell: "B2", value, sheet, save} - apply_edit() rewrites only the target row — preserves comments, blank lines, @Directives, formulas in other cells
- Header row (row 1) always read-only
- 73 new tests including HTTP roundtrip via stdlib http client
See spec/SPEC.md §18.