Pelican is an underdog among static site generators but still has a very simple mental model [1] of readers, writers and generators.So it becomes easy to extend and work with. Not sure why it’s not as popular, but after working with Jekyll, Hugo and Nikola Pelican seems better designed with decent code structure. From the documentation:
“What Pelican does is take a list of files and process them into some sort of output. Usually, the input files are reStructuredText and Markdown files, and the output is a blog, but both input and output can be anything you want.”
Pelican maintainer here. I really appreciate all the kind words. Maintaining any open source project can often feel like a thankless task, and so all the positive vibes in this thread mean a great deal to me.
We put a lot of thought and work into Pelican, with the intention of making web publishing as easy and fun as we can make it. We welcome your participation as well, so please don't hesitate to help out and contribute! https://docs.getpelican.com/en/latest/contribute.html
I've gotten started with Pelican recently, and so far so good. Looks it has enough flexibility to do what I can reasonably conceive of wanting to do.
However, its documentation is unfortunately weak for someone coming into it fresh. It jumps into writing content without first walking you through concepts, terminology, and how inputs ultimately get turned into outputs. This is too bad, since it seems like a really nice piece of software, and the kind of issue that might drive away new users.
Even the example link provided to the Internals section is at the wrong level of abstraction for a new user uninterested in the internals to understand the set of concepts they need to grasp to generate a whole site.
Pelican is more popular than Nikola, judging from their Github repos. As for Jekyll and Hugo, I'd surmise that Python is too mainstream for the hip crowd. Plus, Jekyll is the "default" generator for Github pages.
Hugo is written in Go, hippy enough for me. It was my first experience with static websites, and I was surprised how smooth it is: easy installation, easy testing, easy deployment.
I was disappointed how Gitbook, after going the SaaS way with v3, has broken compatibility with their own v2 cli. If you export markdown files from gitbook.io, gitbook-cli v2 is unable to import them and turn into static HTML files because Gitbook now uses custom liquid tags which are not open-source.
m000 is saying that the usage of Jekyll (Ruby) and Hugo (Go) are driven in part by hip trend-following programmers not wanting to use Python, not that Jekyll and Hugo are written in Python.
Having worked with both Pelican and Jekyll, I couldn't agree more. Pelican is simple and easy to install, compared to what I had to go through with Jekyll.
Another vote for Pelican. I've been using it since around 2012. Easy to use, and usually you can find a plugin for what you need. If you can't, it's not hard to write one, as long as you know Python. I wrote something to allow me to use org files as input, instead of md or rst. Many others have as well.
make would be a nice companion, but it does not process files, it handles the order of files processingf (indeed, static sites generators and make go together quite nicely)
“What Pelican does is take a list of files and process them into some sort of output. Usually, the input files are reStructuredText and Markdown files, and the output is a blog, but both input and output can be anything you want.”
[1] https://docs.getpelican.com/en/stable/internals.html#overall...