Skip to content

mazelife/agilulf

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

40 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Agiluf

A basic static blogging engine, written in Haskell. It's meant to be bare-bones but supports:

  • html templating
  • tagging
  • multiple authors
  • RSS

It's built on top of the awesome Pandoc document converter. You just write your blog entries in RST, add a little metadata to the top, and let Agiluf do the rest. Templating uses Hastache, a Haskell implementation of Mustache templates.

A typical project structure:

my_blog/
    entries/
        lorem-ipsum.rst
        sit-amet.rst
        (etc.)
    templates/
        entry.html
        index.html
        tag.html
    static/
        css/
            (user/theme determined)
        javascript/
            (user/theme determined)
        images/
            (user/theme determined)
        media/
            photo1.jpg
            song.mp3
            (etc.)
    publish/
        index.html
        page2.html
        page3.html
        (etc.)
        entries/
            lorem-ipsum.html
            sit-amet.html
            (etc.)
        static/
            (copied from above)
        tags/
            my-first-tag.html
            another-tag.html
            (etc.)

A skeleton project with a simple theme based on Twitter's Bootstrap framework is located in the example_blog folder in this project. You can use this as a base for building your own blog. The compiled binary can be used thusly:

?> agiluf /path/to/my_blog

The blog will be output into the publish folder (as shown above). No fancy publishing workflows needed; from there it's a simple step to rsync the new blog contents up to your server:

?> rsync -avh /path/to/my_blog/publish/ me@myserver.com:/var/www

Colophon

Why the name? There were a couple of historical figures who bore this sobriquet. However, I took the name from Italo Calvino's wonderful novel The Nonexistent Knight. It's something of a nod to the challenges of learning Haskell.

About

A static blogging engine written in Haskell

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published