Skip to main content
KiwiFS ships a full web UI embedded in the Go binary. Open http://localhost:3333 after kiwifs serve — no separate install.

Features

File tree

Expand, collapse, drag-drop, and context menu on markdown files.

Editor

Source-preserving BlockNote editor. Keeps on-disk formatting stable.

Search

Cmd+K opens global BM25 search. Semantic results appear when vector search is configured.

Graph view

Force-directed wiki-link network.

Bases

Saved DQL queries with table or board layouts.

Canvas

Interactive Flow diagrams from .canvas.json files.

Whiteboard

Excalidraw sketches in .excalidraw.md files.

Kanban

Boards driven by workflow state machines.

Comments

Inline annotations on specific lines.

Data sources

Saved import connections with auto-sync.

Layout

The UI uses a three-pane layout:
PaneContents
SidebarFile tree, space switcher (multi-space mode)
MainPage view or editor
PanelsBacklinks, ToC, comments, page view counts

File tree

The sidebar file tree supports expand/collapse, drag-and-drop reordering, and context menus for rename, duplicate, move, and delete. You can drag files from your operating system into the tree to import them as markdown pages.

Toolbar views

Beyond the page editor, the header toolbar opens full-screen views:
ButtonView
Knowledge graphForce-directed wiki-link network
BasesSaved DQL queries with table or board layouts
CanvasInteractive Flow editor for .canvas.json files
WhiteboardExcalidraw hub for .excalidraw.md files
TimelineRecent git-backed activity
KanbanWorkflow boards grouped by state
Data sourcesSaved import connections and sync controls
See Canvas, Whiteboard, and Import connections.

Engagement metrics

When analytics tracking is enabled, page view counts appear in the page header. The kiwifs analytics CLI command and GET /api/kiwi/analytics REST endpoint also report engagement data — top viewed pages and failed searches that indicate content gaps. See Analytics API.

Page view and editor

Rendered markdown with wiki links, Mermaid diagrams, charts, kanban blocks, callouts, tabs, columns, and other rich widgets. Syntax-highlighted code blocks use Shiki with line highlights and titles.

Rich blocks and widgets

Pages can embed interactive blocks using fenced code blocks. These render as rich components in the web UI and degrade to plain code in other markdown viewers.
BlockWhat it renders
kiwi-chartBar, line, area, pie, radar, scatter charts
kiwi-queryInline DQL tables and lists
kiwi-kanbanInline kanban boards
kiwi-playgroundInteractive sliders, toggles, selects
kiwi-appSandboxed HTML/CSS/JS
kiwi-diffAnnotated inline diffs
kiwi-progressProgress bars and gauges
kiwi-colorColor palette swatches
mermaidFlowcharts, sequence diagrams
widget:liveReact Live code
widget:codePython via Pyodide
Container directives :::tabs and :::columns provide layout control. GitHub-style callouts (> [!NOTE], > [!WARNING], etc.) render as styled admonitions with foldable variants. See Widgets and block types for syntax and examples.

Wiki navigation

  • [[wiki links]] render as clickable links; unresolved links are highlighted.
  • Backlinks panel lists pages linking to the current page.
  • Graph view visualizes the wiki-link network with link-type filtering.

Publishing and PDF export

Use Publish in the page header (or POST /api/kiwi/publish) to set published: true in frontmatter. Published pages are readable at /p/{path} with a themed reader view. The page actions menu also supports in-browser PDF export via Typst. See Publishing and Document export.

Themes

Built-in themes: kiwi, ocean, forest, sunset, neutral. Users can switch unless locked:
.kiwi/config.toml
[ui]
theme_locked = false
Published pages at /p/* use a separate reader theme configurable via PUT /api/kiwi/theme.

Analytics

When analytics tracking is enabled, the UI shows an analytics dashboard with page views, search analytics, content gaps, and trend charts. Per-page view counts appear in the page header. See Analytics API.

Keyboard shortcuts

Configurable keyboard shortcuts for navigation, editing, and search. View and customize via GET /api/kiwi/keybindings or the settings panel.

Mobile

The UI is responsive. Reading works well on phones; editing is best on desktop.

Quickstart

Install and run in 60 seconds.

Widgets

Charts, kanban, playground, and other rich blocks.

Wiki links

Syntax and backlink behavior.

Bases

Saved views and DQL.

Canvas

Spatial diagrams.

Whiteboard

Excalidraw sketches.
Last modified on June 25, 2026