|
|
|
|
|
by zmanji
4928 days ago
|
|
A serious alternative to Jekyll is Nanoc[1]. It is absurdly easy to compile any format to another format using a simple 'Rules' file. I for example have pandoc -> HTML with custom syntax highlighting and LaTeX -> pdf on my personal website [2]. Everything is customization and configurable so you can have your own conventions for posts, etc. [1]: https://github.com/ddfreyne/nanoc
[2]: https://github.com/zmanji/zameermanji.com |
|
The problems with nanoc unfortunately only become apparent after you've invested significantly into it and your site starts to grow in complexity and/or size (file-count). I've been there and it wasn't fun at all...
The first problem is the obscure Rules DSL. It feels somewhat elegant in the beginning when you're mostly working of the canned examples. But once you divert from the beaten paths it quickly turns into a hairy mess and you find yourself with a >300 lines rules file, various workarounds tacked into the 'preprocess'-block, a conglomerate of "filters" and "helpers", and a rapidly fading memory of "How did all this fit together again?".
The second problem is performance. If your site contains auto-generated parts (e.g. API-docs) then the number of files may quickly grow into the thousands. Nanoc doesn't cope well at such sizes. In the end the compile-phase took 10 minutes(!) for my ~9k file-project on a beefy machine.
That said, nanoc is okay for smallish projects, just beware the constraints.
Middleman has been a more pleasant experience here (after the porting pains). It's a much more straightforward design. I can come back to it after a month or two and be immediately productive again. With nanoc this always involved a lot of pain re-learning the Rules-magic and interdependencies...
[1] http://middlemanapp.com