A self-hosted wiki. Single binary, no external database, Markdown on disk.
For engineers and small teams. No Node.js, no Redis, no Postgres โ just a binary and a data directory.
- Runs on Linux, macOS, Windows, and Raspberry Pi
- Easy to back up โ backup is
cp -r - Public read-only mode โ share docs without accounts
What it does
- Tree navigation with collapsible sections you control
- Full-text search with tag-based filtering (Ctrl+Shift+F)
- Tags on pages โ searchable and filterable across the wiki
- Markdown editor with live preview, Ctrl+V image paste, and autocomplete for internal links
- Roles: admin, editor, viewer
- Public read-only mode for sharing without accounts
- Revision history and restore (--enable-revision)
- Link refactoring on rename or move (--enable-link-refactor)
- Backlinks and broken link detection per page
- Optimistic locking for concurrent edits
- Mermaid diagrams and KaTeX math rendered inline
- Import from Obsidian vaults or Markdown ZIP archives
Works well for
- Personal knowledge bases and engineering notes
- Team runbooks, internal docs, onboarding guides
- Homelab and self-hosted setups
- Obsidian users who want a structured server-side wiki
- Anyone who prefers tree structure over a flat note feed
Probably not for you if
- You need real-time collaborative editing
- You want Confluence or Notion feature parity
- You need approval workflows or automations
- You have a large org with complex permission requirements
It's intentionally focused. That's the point.
Quick start
docker run -p 8080:8080 \
-v ~/leafwiki-data:/app/data \
ghcr.io/perber/leafwiki:latest \
--jwt-secret=secret \
--admin-password=admin \
--allow-insecure=truesudo /bin/bash -c \
"$(curl -fsSL https://raw.githubusercontent.com/perber/leafwiki/main/install.sh)"Why it exists
If you've looked at Wiki.js or Outline and thought "this is too much to operate for what I need" โ this could fit for you.
I wanted a wiki for notes I might still need years from now. Not one that turns documentation into another fragile system to maintain or locks content into a format that is hard to move later.
Most self-hosted wikis need a database server and a runtime. LeafWiki is a single Go binary. SQLite handles state. Page content is stored as plain .md files on disk. Readable without the app; LeafWiki manages structure, routing, assets, and permissions.
The goal is not to become an all-in-one workspace. The goal is a wiki small enough to operate comfortably and structured enough for documentation you want to keep around.
Built and maintained by @perber. LeafWiki is still early, and real-world testing, rough-edge reports, and feedback are especially useful right now. Questions or feedback? Open a discussion on GitHub.
Get involved
LeafWiki is community-supported open source. It improves through real-world use, bug reports, and small contributions from early users. Bug reports, feature requests, and pull requests are all welcome.
- GitHub Discussions : ask a question, share a use case, suggest an idea
- Issues : report a bug or request a feature
- Contributing guide : how to contribute code or docs
If LeafWiki is useful to you, starring the project and sharing it helps more than you'd think. GitHub Sponsors helps fund ongoing work.
What's next
Paste content from Word, OneNote, and similar tools. Basic structure like headings and lists is preserved as Markdown.
Push page content to a Git repository automatically โ keeping documentation in sync with version control.
From the blog
A practical comparison of DokuWiki and LeafWiki.
v0.10.0 adds Tags & Properties, Table of Contents, KaTeX support, Proxy Auth, and editor improvements.
A self-hosted wiki should preserve knowledge without turning documentation into another production system to babysit.








