summaryrefslogtreecommitdiff
path: root/README.md
blob: 4b597a41b0b842fdfa7c3abca9d5021b70770a4b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
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)
             (srfi srfi-19))

(site #:title "Built with Guile"
      #:domain "dthompson.us"
      #:default-metadata
      `((author . "David Thompson")
        (email  . "davet@gnu.org")
        ;; If I'm careless and forget a date, use the UNIX epoch.
        (date   . ,(make-date 0 0 0 0 1 1 1970 0)))
      #:readers (list sxml-reader html-reader)
      #:builders (list (blog)
                       (atom-feed)
                       (atom-feeds-by-tag)))
```

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`.

License
-------

GNU GPLv3 or later