Groovy | GPars | Guice
Live preview to make and see changes on the fly. Grain instantly reloads any changes made to site content and saves time on implementing styles and layouts.
Grain allows you to pass custom preferences to site pages and perform dynamic modification of resources by executing embedded Groovy code inside content files and templates.
Resource to URL mapping minimizes the number of templates by allowing you to associate the same page file with different urls, content and preferences.
Infinite template nesting and tag libraries make Grain suitable for large-sized projects. Built-in tags designed for combining page parts help keep templates DRY and easy to read.
Grain supports Markdown, RST and AsciiDoc markups. TxtMark or PegDown is used for rendering Markdown, Python Docutils for RST, and Ruby Asciidoctor for AsciiDoc.
Grain comes with themes and examples for an easy start. The framework has been around for a while now, and has a sufficient number of site templates to play and learn with.