Kavu is a monospace, terminal-inspired Hugo theme designed for building digital gardens and personal knowledge bases, with note maturity stages, automatic backlinks, and an interactive network graph.
What is Kavu?
Kavu is a Hugo theme for creating digital gardens and personal knowledge bases. It takes markdown notes with frontmatter (title, date, tags, status, type) and renders a static website with a homepage index, an interactive network graph of interlinked notes, a tag cloud, and note pages with backlinks. The theme was originally forked from paulmartins/hugo-digital-garden-theme and inspired by Maggie Appleton's website; it is MIT-licensed and developed by stultus.
Key Features
- Network graph — an interactive, force-directed visualization of all notes and their connections, with hover highlighting, label collision avoidance, search, zoom, fit-to-view, fullscreen, and keyboard shortcuts for search (
/), fit (F), fullscreen (Shift+F), and zoom (+/-). - Note maturity system — notes declare a
statusfrontmatter field ofseeding,growing, orevergreen, which controls their visual treatment and feeds live garden statistics. - Automatic backlinks — each note page shows links pointing back to it, derived from other notes' internal links, with summaries.
- Homepage dashboard — live counts of total notes and maturity-stage breakdowns, "Recently Tended" and "Most Connected" lists, collapsible topic cards, a filterable and sortable full index, and a random-note button.
- Tag system — tag cloud with note counts, sortable tag pages by Recent / A-Z / Status, and related-tag discovery via co-occurrence.
- Design system — monospace typography stack (JetBrains Mono, IBM Plex Mono, Fira Code), Nord-inspired CSS variable palette, full dark mode via CSS, responsive layout, wikilink-style
[[bracket]]rendering, and Malayalam font (Manjari) support. - Content types — supports note, essay, moc (map of content), and source types via a
typefield, plus optionalsummarysubtitle and tag pills.
Who is it for?
- Zettelkasten practitioners — people who maintain atomic notes with dense links can showcase their network visually and keep notes with maturity states.
- Developers who use Hugo — anyone already publishing with Hugo can add Kavu as a git submodule and adopt the frontmatter conventions.
- Personal knowledge-base owners — individuals who want a public, static second brain with browsing by topics, tags, and connected notes, without a server.
What can you do with Kavu?
- Browse a knowledge base by connection — use the network graph and "Most Connected" lists to find clusters of related notes across your entire garden.
- Publish a garden with staged maturity — mark notes as seeding, growing, or evergreen so visitors can see which content is stable and which is a stub.
- Organize notes by topic and tag — group notes via collapsible topic cards, tag cloud counts, and sortable tag pages that expose co-occurring related tags.
- Support multilingual typography — use the built-in Manjari font to render Malayalam text in note pages and the UI.
How does Kavu work?
Kavu is installed via git submodule add [email protected]:stultus/kavu.git themes/kavu, then declared in hugo.toml with theme = "kavu". Notes are written in Markdown with frontmatter containing title, date, lastmod, tags, summary, status, and type; internal links must use absolute paths such as [Note Title](/notes/note-slug/) so Kavu's link resolver can build backlinks and the graph. The theme optionally displays a "Built with Kavu by stultus" footer credit that can be disabled with the hideThemeCredit parameter.






