What are the comparative advantages and disadvantages of yst and hakyll static website generators?

I maintain an academic website for myself, which duplicates a lot of material, which I also put in my cv. To avoid having to maintain multiple files with the same information and maintain synchronization, I use tex and bib files mainly and I create my cv in latex and use htlatex for the website.

As a project to improve my knowledge of Haskell, I was thinking of building my site using one of the haskell-based static site generators. I easily found several hakyll sites, but only a few yst, and I don’t understand which hakyll problem was developed for a solution that yst could not handle. I am interested to know what people see as the comparative advantages and disadvantages of each, and if there is any special reason why I could start with this or that, given the current database of .tex and .bib files.

+8
haskell web hakyll
source share
2 answers

Disclaimer: I am the author of Hackill.

What Hakyll gives you is EDSL on top of pandoc, which allows you to more easily determine how to handle different files. This is similar to specialized make on top of Pandoc. It also offers some other features that are useful for creating static websites, i.e. For managing URLS and HTML.

I think the main difference between yst and Hakyll is that Hakyll is configurable on the one hand (since the configuration is just Haskell), but it's probably harder to get started and work.

+8
source share

I do not know about hakyll, but yst uses pandoc ( http://johnmacfarlane.net/pandoc/ ) and shines in combining a static site in combination with a bit of dynamic data in yaml (for example, events): it supports sql language as a mini language for inserting these dynamic data fields into a template.

Yst also helps create a multi-page website, which is a bit more complicated when using only pandoc.

However, it was difficult for me to insert other elements into the template that are not supported by yst by default (for example, the table of contents of the page itself).

In addition, pandoc (used in the background) has become much more powerful with the advent of the yaml metadata block ( http://johnmacfarlane.net/pandoc/README.html#yaml-metadata-block ), which allows you to insert almost everything into the base template ( for me pandoc has completely replaced LaTeX as an input format, since pandoc can convert files in both html and LaTeX (among others)).

I would suggest that you decide to use pandoc instead of yst if you don't need this function for mini sql.

+5
source share

All Articles