Go to file
David Thompson 17e72708a8 Add beginnings of a reference manual.
* Makefile.am (info_TEXINFOS): New variable.
* doc/haunt.texi: New file.
* doc/fdl-1.3.texi: New file.
* guix.scm [native-inputs]: Add texinfo.
2015-10-15 21:05:11 -04:00
doc Add beginnings of a reference manual. 2015-10-15 21:05:11 -04:00
example Add support for Skribe document format. 2015-10-12 20:22:28 -04:00
haunt utils: Clean up and add tests. 2015-10-14 10:50:03 -04:00
scripts Remove hardcoded Guile executable path. 2015-07-26 15:20:18 -04:00
tests utils: Clean up and add tests. 2015-10-14 10:50:03 -04:00
website website: Add license information to home page. 2015-08-10 09:06:04 -04:00
.gitignore Add beginnings of a reference manual. 2015-10-15 21:05:11 -04:00
COPYING First commit. 2015-01-04 20:02:16 -05:00
Makefile.am Add beginnings of a reference manual. 2015-10-15 21:05:11 -04:00
README.md Update Guix development package. 2015-10-12 20:24:06 -04:00
THANKS Add THANKS file. 2015-08-09 10:13:18 -04:00
bootstrap Add autotools bootstrap script. 2015-07-19 10:02:53 -04:00
configure.ac utils: Clean up and add tests. 2015-10-14 10:50:03 -04:00
guix.scm Add beginnings of a reference manual. 2015-10-15 21:05:11 -04:00
pre-inst-env.in First commit. 2015-01-04 20:02:16 -05:00
test-env.in utils: Clean up and add tests. 2015-10-14 10:50:03 -04:00

README.md

Haunt

About

Haunt is a static site generator written in Guile Scheme. It's simple, functional, and extensible.

Features

  • Easy blog and Atom feed generation
  • Supports any markup language that can be parsed to SXML
  • Simple development server
  • Purely functional build process
  • User extensible

Example Configuration

(use-modules (haunt site)
             (haunt reader)
             (haunt builder blog)
             (haunt builder atom)
             (haunt builder assets))

(site #:title "Built with Guile"
      #:domain "example.com"
      #:default-metadata
      '((author . "Eva Luator")
        (email  . "eva@example.com"))
      #:readers (list sxml-reader html-reader)
      #:builders (list (blog)
                       (atom-feed)
                       (atom-feeds-by-tag)
                       (static-directory "images"))

Usage

Write a configuration file named haunt.scm. Add your posts to a directory named posts. Then run haunt build!

To view your creation, run haunt serve and browse to localhost:8080.

Requirements

  • GNU Guile >= 2.0.11

Optional:

  • guile-reader (for Skribe support)

Building from Git

Haunt uses the familiar GNU build system. GNU automake, autoconf, and make are required to build from a git checkout.

./bootstrap && ./configure && make

Once Haunt is built, it can be run directly from the source tree (no need to run make install) via the pre-inst-env script:

./pre-inst-env haunt --help

GNU Guix users can create a build environment with all necessary dependencies using the handy guix environment tool:

guix environment -l guix.scm

Examples

An example Haunt site can be found in the example directory:

cd example
../pre-inst-env haunt build

License

GNU GPLv3 or later