Edited: Monday 24 February 2025

The world's most extensive framework for building digital gardens

Xlog is one of the most complete static site generator for digital gardens and knowledge bases. Written in Go makes it the fastest in its class. Xlog focuses on enriching markdown files and surfacing implicit links between pages.

Xlog allows you to create knowledgebase using any method you are familiar with:

  • Weblog (Blog): Write posts in markdown format with huge variety of automatic improvements such as auto linking text to other posts
  • Video Log (Vlog): Create pages for your screenshots, camera recording, screen casts
  • Sound Log (Slog): Create pages for recorded audio, think podcasts
  • Photo Log (Plog): Add photo albums to your knowledgebase, xlog detects EXIF data like ISO, Aperture, Shutter speed, Camera and Lens

Hence the X in Xlog refers to all of these types of accumulating knowledge and others YOU will invent while using xlog.

Xlog also allows:

  • Generating your knowledgebase as a website. in fact this website is generated by Xlog and hosted on Github pages
  • Support hashtags, mermaid graphs, code blocks, emojis…and many more

⚑ Quick Start

1go install github.com/emad-elsaid/xlog/cmd/xlog@latest
2mkdir new-site
3cd new-site
4xlog
5# => Now browse to http://localhost:3000

πŸ”‘ Core Features

  • Serves any file from current directory
  • Any markdown is rendered to HTML format
  • Light and Dark theme depending on device preference
  • Supports Github flavor markdown (Emojis, Todo lists, MermaidJS, MathJax)
  • Full 1/3 Features Test page

πŸ“Œ Usecases

🌱 Getting started

βš–οΈ Principles

  • Uses the file system. No databases required
  • Minimal design and dependencies
  • Small core, flexible enough for developers to extend it.
  • Avoid adding syntax to markdown, instead enhance how existing syntax is rendered

πŸ“š Documentation

  • This website serves as end user documentation and developer entry point for developing extensions
  • There is also a Go package documentation that you can use to understand what xlog expose as public API

πŸŽ“ Tutorials

🧩 Extensions

🀝 Contributors

Contributing

You can help Xlog in many ways:

  • Create a new extension
  • Improve the core codebase
  • Package it for different operating systems or different Linux distribution

πŸ§‘β€πŸ€β€πŸ§‘ Community

πŸ“œ License

Xlog is released under MIT license