/discharge

Static blog generator in Clojure

Primary LanguageClojureEclipse Public License 1.0EPL-1.0

Discharge

Discharge is a not-again-why-the-hell-you-need-another-one static website/blog generator. It started as a fork of Static, but eventually the list of changes grew too large to call it a fork.

Here’s the list of reasons why you would suddenly want to use Discharge:

  • heavily relies on .org files for posts and site pages. Nevertheless other formats (Markdown, HTML and Clojure Hiccup) are supported;
  • supports page cuts (readmore’s) for .org files;
  • uses Hiccup for page templates;
  • allows to embed Hiccup forms into org-mode files;
  • maintains file cache and in watch mode rapidly rebuilds only the pages that were changed.

Examples

There are currently two websites built with Discharge:

Dependencies

Things you need to have installed:

  • Leiningen (to build Discharge jar)
  • Emacs (to generate HTML pages form .org files)
  • Pygments (for highlighting code blocks)

Installation

Build Discharge using lein uberjar. You’ll get discharge-app.jar file which you should put into some easy to reach place.

Usage

Build the site:

java -jar /path/to/discharge-app.jar --build

Watch mode: run Jetty server to browse the site locally and automatically rebuild it on changes:

java -jar /path/to/discharge-app.jar --watch

To view all supported options:

java -jar /path/to/discharge-app.jar --help

Acknowledgments

I thank Nurullah Akkaya for creating Static which Discharge is based on.

License

Copyright © 2010, 2011, 2012 Nurullah Akkaya, 2013-2014 Alexander Yakushev. Distributed under the Eclipse Public License, the same as Clojure. See the file COPYING.