Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

static html generator – abandoned in favor of clayoven

branch: master

Fetching latest commit…

Octocat-spinner-32-eaf2f5

Cannot retrieve the latest commit at this time

Octocat-spinner-32 cache
Octocat-spinner-32 design
Octocat-spinner-32 in @ e6642dc
Octocat-spinner-32 out @ 340f5ee
Octocat-spinner-32 t
Octocat-spinner-32 .gitignore
Octocat-spinner-32 .gitmodules
Octocat-spinner-32 LICENSE
Octocat-spinner-32 README.md
Octocat-spinner-32 __init__.py
Octocat-spinner-32 asciidocapi.py
Octocat-spinner-32 build
Octocat-spinner-32 configure
Octocat-spinner-32 core.cfg.example
Octocat-spinner-32 core.py
Octocat-spinner-32 tests.py
Octocat-spinner-32 util.py
README.md

rejourn

rejourn is a static site generator for programmers. Just write an article in a markup language of your choice, and some metadata information like author/ date; rejourn takes care of the rest.

Dependencies

  • Mako Python bindings
  • Markdown Python bindings [optional: for markdown rendering]
  • Nose [optional: for running included tests]

Features

  • Markdown and Asciidoc. It can easily be extended to support more markup languages- simply write a tranform function and add it to the 'htransform_mapper' in 'util.py'.
  • Dependencies handled by Makefile. This means that an output HTML file will not be built unless and until the corresponding input file changes.
  • Drafts. The 'draft' metadata header controls whether the output should be built.
  • Static pages. For pages in the toplevel index like "About me". Controlled by 'static' metadata header.
  • Configurable views. The template to render with the given content is controlled by a simple 'view_mapper' in 'util.py'.
  • Tags. You can assign associate multiple freeform tags to a single article, and view all articles with a certain tag. Controlled by 'tags' metadata header.
  • Cache. No article is ever unnecessarily rebuilt- the content is hashed and stored in the 'cache' subdirectory to recall at a later time. This is especially useful when the site has many tags.
  • RSS 2.0 feed. Built by default- no extra configuration required.

Available metadata headers

  • title: The title.
  • author: The author.
  • snip: A short description of the article. Appears in index.
  • view: The design view to use. Can be single, index, or rss.
  • htransform: The filter to pass the content through. Can be "markdown", "asciidoc", or "html".
  • tags: The tags the post should be associated with.
  • static: A boolean specifying whether the page should appear in the index. Useful for "about" pages.
  • draft: A boolean specifying whether the page should be built.
  • permalink: The permalink. Automatically written when built.
  • pubdate: The date of publishing. Automatically written when built.

Usage

Copy core.cfg.example as core.cfg and modify it to set the indir, outdir and possibly other options. Run the configure script to generate the Makefile; then run make to produce the actual HTML pages in outdir. Run make test to run the included tests.

When an existing input file is modified, run make to update the output file. When the Makefile needs to be regenerated to build new input files, run the configure script to regenerate it.

Use Apache's mod_rewrite (or the corresponding feature in your webserver) to append '.html' at the end of URLs to access the corresponding physical files. All links generated by rejourn assume this configuration.

Contributing

Simply fork the project on GitHub and send pull requests.

Something went wrong with that request. Please try again.