Fast, Git-native framework for building knowledge bases
XLog is a static site generator optimized for digital gardens and personal wikis. Written in Go with 37 built-in extensions for backlinks, hashtags, search, and more.
Features
- Fast - Written in Go, renders large knowledge bases in seconds
- Live Preview - Embedded web server with hot-reload shows changes instantly
- Interconnected - Automatic backlinks and bidirectional page relationships
- Extensible - 37 built-in extensions for photos, todos, search, and more
- Git-Native - Filesystem-based, works with any text editor and version control
- Flexible Output - Serve locally or generate static sites for deployment
Quick Start
go install github.com/emad-elsaid/xlog/cmd/xlog@latest mkdir my-notes cd my-notes echo "# Hello World" > index.md xlog # => Browse to http://localhost:3000
Use Cases
- Personal Wiki - Interconnected notes with automatic backlinks
- Research Notes - Organize papers, citations, and ideas
- Documentation - Team knowledge bases and project docs
- Learning Journal - Study notes with hashtags and search
- Digital Garden - Public or private knowledge sharing
How It Works
- Write - Create markdown files in any text editor (Vim, Emacs, VS Code)
- Preview - Run
xlogto start the live preview server with hot-reload - Enhance - XLog automatically adds backlinks, hashtags, and search
- Deploy - Generate static site with
xlog -build output/
XLog runs a web server that watches your markdown files. When you click "Edit" in the browser, it opens the file in your configured editor. Save the file, and the browser automatically refreshes to show your changes.
Why XLog?
vs Other Static Generators: XLog adds knowledge-base features (backlinks, hashtags, search) out of the box
vs Cloud Tools: XLog is free, self-hosted, privacy-focused, and works offline
vs Obsidian Publish: XLog is open source, customizable via extensions, and Git-native
vs Notion: XLog is local-first, markdown-based, and integrates with your existing workflow
Documentation
Extensions (37 Built-in)
XLog includes 37 extensions that enhance your knowledge base:
Knowledge Base:
- Backlinks - Automatic bidirectional links between pages
- Hashtags - Tag pages and browse by topic
- Search - Full-text search across all notes
- Recent - Activity tracking for recently modified pages
Content:
- Photos - EXIF data extraction for photo albums
- Todos - Task lists with checkboxes
- Mermaid - Diagrams and flowcharts
- MathJax - Mathematical notation
And 29 more... View all extensions
Shell Completion
# Bash eval "$(xlog -completion bash)" # Zsh eval "$(xlog -completion zsh)" # Fish xlog -completion fish | source
Contributing
- Create new extensions
- Improve the core codebase
- Report issues or suggest features
See CONTRIBUTING.md for details.
Vendored Packages
XLog vendors some dependencies for more control and stability. We thank the original authors:
- goldmark by Yusuke Inuzuka - Core markdown parser
- goldmark-emoji by Yusuke Inuzuka - Emoji support
- goldmark-highlighting by Yusuke Inuzuka - Syntax highlighting
- goldmark-meta by Yusuke Inuzuka - Frontmatter parsing
- goldmark-toc by Abhinav - Table of contents
License
XLog is released under the MIT license




























