Skip to content
A static blog generator written in Python
Python Emacs Lisp
Find file
New pull request


Golbarg is a static blog generator written in Python. It is heavily inspired by Jekyll, but is is (obviously!) better (at least in my opinion).

You can see it in action on my own blog, (source code on Github too).

Golbarg is free software, available under the terms of the GNU GPLv3 license.


  • Markdown synax for editing posts
  • Jinja 2 template engine
  • YAML standard for configuration and posts metadata (similar to Jekyll's YAML front matter)
  • Written in Python
  • Well-documented and easily hackable
  • Built-in support for tags and archive generation



  1. Install Python (version 2.6, Golbarg is not compatible with Python 3 yet)
  2. Install the dependencies
  3. Install Golbarg: you can use Python tools (easy_install Golbarg or pip install Golbarg) or, if you are a Linux user, the tools from your distribution(pacman, aptitude, emerge...) if someone packaged Golbarg for it
  4. Create a directory where you will put all your files
  5. Create your configuration file and templates; you may want to look at mine for examples
  6. Write your posts in the content/posts directory, using the Markdown syntax, with a YAML header for metadata (again, see my blog for examples)
  7. Run golbarg to generate the full site
  8. Upload it somewhere and enjoy your blog!

golbarg-mode for Emacs

If you use Emacs, you may want to use golbarg-mode. Simply add the directory where golbarg.el is located to your load-path, add (require 'golbarg) in your .emacs, and you are done. You can now use M-x golbarg-mode to switch a buffer to the Golbarg major mode, and use other commands such as golbarg-new-draft, golbarg-publish-post, and golbarg-preview (after customizing the golbarg-drafts-dir and golbarg-posts-dir variables).

You can see a full configuration on my emacs-config repository.

golbarg-mode requires markdown-mode and yaml-mode to work, so be sure to install these modes first.

Something went wrong with that request. Please try again.