1
1
Fork
You've already forked haunt
0
Fork of Haunt (https://git.dthompson.us/haunt.git) with Gemini protocol support. This fork adds a Gemini capsule builder that allows you to serve your Haunt content over both HTTP and the Gemini protocol simultaneously. The Gemini builder: - Converts any Haunt-supported markup (Markdown, Texinfo, Skribe, HTML, SXML) to Gemtext format - Creates an index page listing all posts - Maintains proper semantic structure when converting content - Supports all major Gemtext formatting features (headings, links, lists, blockquotes, code blocks) - Preserves post metadata (title, date, author) - Generates output in the site/gemini directory The builder is designed to work seamlessly with existing Haunt configurations - just add the gemini-builder to your site's builders list to start serving content over Gemini.
  • Scheme 94.5%
  • Makefile 2.7%
  • Shell 1.2%
  • M4 1%
  • HTML 0.6%
Find a file
2024年12月10日 04:14:33 +00:00
doc builder: Add Gemini capsule builder 2024年12月07日 08:03:07 +03:00
example flat-pages: Add index metadata flag for pretty URLs. 2024年09月24日 10:35:07 -04:00
example-site fix: update metadata format and add default title to site configuration 2024年12月10日 07:08:52 +03:00
haunt Add Gemini site for 2024 with updated configuration 2024年12月10日 06:30:51 +03:00
scripts Automatically add Haunt's modules to Guile's load path at startup. 2022年07月07日 21:56:17 -04:00
tests html: Fix emission of 'script' and 'style' elements. 2024年03月02日 20:37:00 -05:00
.dir-locals.el Add .dir-locals.el file. 2022年12月06日 07:57:02 -05:00
.gitignore Automatically add Haunt's modules to Guile's load path at startup. 2022年07月07日 21:56:17 -04:00
0001-builder-Add-Gemini-capsule-builder.patch Add Gemini capsule builder 2024年12月08日 09:13:15 +03:00
bootstrap Add autotools bootstrap script. 2015年07月19日 10:02:53 -04:00
configure.ac Remove obsolete website. 2023年11月12日 12:45:23 -05:00
COPYING First commit. 2015年01月04日 20:02:16 -05:00
guix.scm guix: Add rsync input. 2023年11月11日 20:10:48 -05:00
Makefile.am ui: Add 'new' subcommand. 2024年09月11日 08:14:39 -04:00
patch-cover-letter.txt Add Gemini capsule builder 2024年12月08日 09:13:15 +03:00
pre-inst-env.in pre-inst-env: export HAUNT_UNINSTALLED. 2023年11月12日 08:06:21 -05:00
README ui: Add 'new' subcommand. 2024年09月11日 08:14:39 -04:00
test-env.in utils: Clean up and add tests. 2015年10月14日 10:50:03 -04:00
THANKS Thank Jorge Maldonado Ventura. 2018年04月02日 10:11:06 -04:00
TODO.org Add TODO item. 2024年09月24日 09:50:31 -04:00

-*- mode: org -*-
Haunt is a static site generator written in Guile Scheme. It's
simple, functional, and extensible.
* Features
 - Easy blog and Atom/RSS feed generation
 - Supports any markup language that can be parsed to SXML
 - Simple development server
 - Purely functional build process
 - User extensible
* Example Configuration
#+BEGIN_SRC scheme
 (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"))
#+END_SRC
* Usage
Write a configuration file named =haunt.scm=. Add your posts to a
directory named =posts=. Then run =haunt build=!
Alternatively, use the =haunt new= command to start a project from a
template quickly.
To view your creation, run =haunt serve= and browse to
=localhost:8080=. For quicker development cycles, run =haunt serve
--watch= to automatically rebuild the site when things change.
* Requirements
 - GNU Guile >= 2.0.11
 Optional:
 - guile-reader (for Skribe support)
 - guile-commonmark (for CommonMark support)
* Building from Git
Haunt uses the familiar GNU build system. GNU automake, autoconf, and
make are required to build from a git checkout.
#+BEGIN_SRC sh
 ./bootstrap && ./configure && make
#+END_SRC
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:
#+BEGIN_SRC sh
 ./pre-inst-env haunt --help
#+END_SRC
GNU Guix users can quickly create a build environment with all of the
necessary dependencies using the handy =guix environment= tool:
#+BEGIN_SRC sh
 guix environment -l guix.scm
#+END_SRC
* Example
An example Haunt site can be found in the =example= directory. To
build it, run:
#+BEGIN_SRC sh
 cd example
 ../pre-inst-env haunt build
#+END_SRC
* License
GNU GPLv3 or later. See =COPYING= for the full license text.