niwa 庭
A CLI garden journal
About
Niwa was born from a simple frustration: every garden journaling app I tried wanted to be more than a journal. They wanted to be social networks, seed marketplaces, or AI-powered growth predictors. I wanted something that would let me type niwa log "transplanted shiso to east bed" and move on with my evening.
The tool follows a philosophy of minimal interference. It stores your data in a SQLite database that you own completely — no cloud sync, no accounts, no telemetry. When you want to review your season, a single command generates a clean HTML report that you can print, share, or simply read in your browser. The report is styled but not decorated. It presents your observations chronologically and lets the rhythm of your garden speak for itself.
Building niwa taught me that the best tools are the ones that disappear into your workflow. You should not have to think about the tool. You should think about the garden.
Write garden notes in Markdown. Each entry supports frontmatter for structured data like plant type, date, and bed location.
Generated reports are pure HTML and CSS. No client-side JavaScript, no build step for viewing. Opens in any browser.
Terminal output and HTML reports respect your system theme. Dark mode is not an afterthought — it is the default.
Subscribe to your own garden journal. Each new entry generates an RSS item, useful for sharing progress with fellow gardeners.
Core language
Markdown parser
Templating engine
Live reload