22
votes
What are your favorite static site generators for creating text based and fast blogs/web pages?
I'm using Bearblog right now and I love it but since I love tinkering a lot, I'm looking for a static site generator so that I can build mine by myself and take full control over my blog. Unfortunately my tech knowledge is not enough to build my own static site generator at the moment but I'm trying to get into that as well.
I know Hugo, Astro, 11ty etc. I'm looking for a much simpler tool.
I currently use Zola, but without knowing specifically what you find complicated about Hugo, Jekyll etc., it's hard to know if that's an improvement for your use case as to me they all operate on basically the same model. To me at least, folder of markdown in, folder of html out is pretty close to as simple as it can get.
I am a happy Zola user as well, and I migrated a couple of sites from Hugo to that. To me, Zola feels simpler, but it is difficult to pinpoint a set of features that is responsible for that.
Hugo feels to be designed for bigger sites, with more complex structures. Somehow with Hugo, I was constantly searching for which template I needed to edit and getting frustrated because my changes wouldn't show up on the page. Never had that problem with Zola. Upgrading to a newer version was trouble too, something would inevitably break.
But I must say that it has been some years since I last used Hugo. It could very well be that it has improved in the meantime.
I'm making a website with hugo right now and I can confirm that this is still a problem. Most of the time it was a matter of my ignorance, but multiple times it was also that the website did not update for some reason that I still don't understand and that seems inconsistent with anything. Also couldn't get automatic deployment on gitlab to work, so I just generate it locally and upload the static files by hand - which is what I expected to do anyway, but hugo promised me an easier automated way that I couldn't get to work.
I chose hugo mostly because I found a great looking free theme that matched probably 90% of my usecase, the resulting website is going to be very simple and it's going to change probably twice a year at most, so all of this is fine, but still, using hugo is more of a hassle than I expected from a static site generator.
If you make a change to the theme I believe the local hot reading dev server will not pick up on those changes and you need to restart the process. You’ll also need to rebuild the outputs manually for deployment.
In the theme I use on my site I’ve noticed it can be difficult to determine which file needs editing. I think for me, a professional web developer, it’s not too hard. I like the balance between the ease of use while still giving me full control over all of the important aspects. But it’s probably meant for people that could build their site from scratch if they wanted to, but would rather save some time.
I use Hugo with a custom theme, and live reloading generally works as expected for me. The one case where it has broken before is with Sass stylesheets, but I think that has been fixed at some point (at least, it feels like less of a nuisance to use a Hugo).
That said, even when live reloading didn't work, it was just a matter of restarting the server - a nuisance, but it worked.
The issue is that the local server seems to pick up some changes when doing that, but not all. It was similar with the automatic deployment using gitlab actions.
Of course it is still by far most likely that the issue is me not understanding how it works and not bugs, it's just that I think it's strangely non-obvious and the official tutorials did not prepare me for that.
But I still have to learn so much less than if I had to build the site from scratch, so I'm not saying hugo was a bad choice.
I knew about Zola but never gave it a chance. I decided to give it a chance, thanks! :)
I don't have anything to add that @Macha and @ewintr didn't already say, but I have built a dozen sites using Zola and am generally very happy with it for development and ease of deployment.
Eleventy is my favourite, one of the fastest ones I've tried. I have it set up with a Cloudflare Worker (free) and they will automatically rebuild my entire site (of about ~200 pages) and deploy it in less than 22 seconds.
Edit: I've tried quite a few over the years, and had never heard of Zola until @Macha mentioned it, being a single executable is incredibly enticing to try....
I have been doing a lot of work with Astro, which I know you said you didn't want. But I wanted to second cloudflare, even if you're using a different tool. One of the cooler things is preview builds on a different branch, so you can push a change, check the preview build, then merge to main for production.
I'm also using Cloudflare and am a big fan. For static sites it largely just works, and it's very quick to set up and use. I use Hugo, and it's fine - there are things it does well and things it does poorly, but largely it's good enough.
It's not an SSG, but Kirby CMS is probably the best tool for this sort of thing I've found. It has a beautiful and fully customisable backend so you can make any type of content you want, and you just simply pull it into also fully customisable "template" files - your page blueprint has a Content field for example, and in your page template you simply pull it in with
<p><?= $page->content()->markdown() ?></p>or whatever you'd like to - full customisability, no database, flat-file, extremely fast and simple to use if you're even the tiniest bit familiar with web technologies and HTML/CSS.Thanks! I will give it a chance after Zola.
I use Jekyll, though for full disclosure it’s almost entirely because it was the new hotness when I started using it and I have not felt the need to evaluate any alternatives. But to be fair, I haven’t checked out alternatives because I haven’t found a need to do so. For quick publication you can just write in markdown and if that isn’t good enough you can pepper in HTML as needed. If you really need advanced things you can learn more about liquid (which really doesn’t have good documentation because the docs assume you are using it with Shopify), but for the most part you should not have such a need. IIRC it also bundles in a SCSS/Sass preprocessor but I don’t really care for such things.
I use Publii (https://getpublii.com/) hosted on Github pages. Trivial set up. No incantations to remember. Just: Write, Save, Sync.
blot.im might be a bit easier for you, although it does cost $5/mo. I have one of my websites on it and it's much less involved than Hugo or something.
You can link with git/dropbox/Google drive and simply type up a file and it uploads to your website. Once setup it was pretty simple to manage.
Edit: I was also able to tinker a little bit with the code to fix up mobile styling so you can still get some tinkering in.
I have been using lektor-cms for years https://www.getlektor.com/ and it works well. There is not much development in the last few years but one could argue it is feature complete for a simple cms.