= hx
A miniature web site generator; a spiritual successor to Hobix.
== History
== Concepts
=== Filters
=== Require and Autoload
Hx supports a very limited sort of autoload; when a filter class name
is provided in a configuration file, and that class doesn't already
exist, Hx will try to require a corresponding library. The name of that
library will be derived from the class name; for example, if
Hx::Backend::RawFiles is missing, Hx will try to require
hx/backend/rawfiles
.
Beyond this, you can also manually require additional libraries
at load time by listing them in the require
section in
the configuration file.
== Tutorial
=== A Trivial Static Site
options:
output_dir: site
output:
- filter: Hx::Backend::RawFiles
options:
entry_dir: static
=== A Site With Entries and Indexes
options:
output_dir: site
sources:
entries:
- filter: Hx::Backend::Hobix
options:
entry_dir: entries
- sort_by: updated
indices:
input: entries
filter: Hx::Listing::RecursiveIndex
output:
- input: indices
filter: Hx::Output::LiquidTemplate
options:
extension: html
template: section
- input: entries
filter: Hx::Output::LiquidTemplate
options:
extension: html
template: entry
- filter: Hx::Backend::RawFiles
options:
entry_dir: static
=== A Site with Date-Based Archives and an Atom Feed
options:
output_dir: site
template_dir: templates
sources:
entries:
- filter: Hx::Backend::Hobix
options:
entry_dir: entries
- sort_by: updated
indices:
input: entries
filter: Hx::Listing::RecursiveIndex
archives:
input: entries
filter: Hx::Listing::DateArchive
sort_by: id
output:
- input: indices
only: index
filter: Hx::Output::LiquidTemplate
options:
extension: html
template: front
- input: indices
except: index
filter: Hx::Output::LiquidTemplate
options:
extension: html
template: section
- input: entries
filter: Hx::Output::LiquidTemplate
options:
extension: html
template: entry
- input: archives
only: */index
filter: Hx::Output::LiquidTemplate
options:
extension: html
template: year
- input: archives
only: //index
filter: Hx::Output::LiquidTemplate
options:
extension: html
template: month
- input: indices
only: index
filter: Hx::Output::LiquidTemplate
options:
extension: atom
template: feed
- filter: Hx::Backend::RawFiles
options:
entry_dir: static
== Copyright
Copyright (c) 2009-2011 MenTaLguY. See LICENSE for details.