Last year, I made an Elm-to-HTML static site generator, Elmstatic. It was stuck on Elm 0.18 for a while, until I finally found the time to update it (I had to switch from using elm-static-html-lib to jsdom).
The current set of features is:
- Pages generated from Elm code (you can use
elm-ui
,html
or any other package that generatesHtml msg
values) - CSS generated from
elm-css
stylesheets in Elm code (but you can use plain old stylesheets if you like) - Page templates for posts and lists of posts (fully customisable)
- Optional subsections with separate streams of posts (eg /postgres and /elm on this site)
- The content of posts and pages is written in Markdown
- Posts can have multiple tags
- A page with a list of posts is generated for each tag
- RSS is generated for the posts
- Code highlighting via Highlight.js (but you can set up whatever you want)
- Support for draft posts
Elmstatic remains an early stage project for now: error handling is limited, and I haven’t done any performance optimisation. However, I’m using it for korban.net, so it’s not just a prototype!
You can find more details here: