Digital garden
A digital garden is a personal online space for notes, characterized by its casual (as opposed to “polished and prepared” like a blog) format and interlinks between ideas.
I've been interested in digital gardening for a while, but haven't gotten around to creating my own garden until now.
Inspirations#
Digital gardening is a relatively recent phenomenon, though it's hard to find one place where it originated; I found a blog/garden post from Maggie Appleton which attempts to go into the history of digital gardening.
In my case, when I think of the concept of digital gardens, a few sites come to mind: Devine's XXIIVV, Exa's site/garden, …
Software#
As with many things, the main barrier to entry for digital gardening is the effort required to set it up. This section discusses the software stack I use for it, as well as other approaches I've seen elsewhere online.
Trilium#
I use Trilium for my own personal notetaking. If you've ever used Obsidian - Trilium is that, but much, much more customizable and flexible, plus fully open-source and self-hostable.
It has text notes, HTML widgets, Excalidraw canvases, Mermaid diagrams… It lets you reorder notes on the sidebar out of the box! Obsidian doesn't even let you do that. And, most crucially for the garden, it lets you share your notes.
(Caveat: it does have a fair bit of LLM contributions as of a few months ago (as a quick peek at the commit history shows), if that's a dealbreaker for you. I haven't found an LLM-free fork.)
The SSG approach#
Single-site generators (SSGs) are ubiquitous in the tech blogging space. Indeed, that makes them a natural candidate for anyone who wants to hack on their own site.
Some, like Exa, extend an existing system like Eleventy (see the page where they describe their config). Others, like quat, write their own.
Besides making the page, there also needs to be a synchronization mechanism; I suppose regular git would do, but the two gardens I mentioned above use Syncthing for live synchronization (Exa's garden even has an automatic in-browser reload - how cool is that?)