Publii - a more visual Static Site Generator

For a while I’ve needed to get together a ~10 page website for a charity event I’m involved with – something for those people not on Facebook but with very similar content – dates, guidelines, FAQs in English and Japanese, some galleries of previous events. That kind of thing.

Many years ago I’d made a simple hand coded HTML and CSS site for it, and that was fine, but then there were issues with the domain name and hosting (neither of which I controlled) so I needed to find another similar domain name, and sort a site out on my own space.

I got a decent domain name on short notice, and linked to it from the FB related site to try to head traffic that way since another entity had control of the old domain and was using it for, shall we say, more ‘adult’ purposes!

Initially, I had spun up a WordPress instance on my hosting space as I was short on time, but that is obviously massive overkill, and the overhead on just checking in on updates, logs etc. was cumbersome for something which was quite quiet between events (-3 a year).

Clearly another solution was possible, but it never made it to the top of my to-do list. I know enough about WordPress to get things moving since it’s simple, and I’ve used it on my blog for years (since the Movable Type license fracas all the years back).

Then, in the Summer 2022, the original domain name became available again at a normal price so I snapped it up and that was the signal to me to sit down for a rainy afternoon and sort it out - a new, static site with all the content from the previous incarnations.

Here on brightblack, I use Hugo as a static site generator (SSG), so since I wasn’t going to be using WP, I wondered if I could just spin it out on Hugo too, and the answer of courses was ‘yes’, but I got it into my head that there must be something simpler, something easier which could still be all locally generated, with no server side creation application to keep up to date or monitor.

So off I went looking at different SSGs. I knew Jekyll and Pelican, but they’re fundamentally similar to Hugo, so if I wanted that, I’d stick with Hugo.

Long story short, I found Publii. It’s a static site CMS (Content Management System) by its own description, but one which uses Electron I believe to create a simple editor application, where you can visually check design, add site specification and meta-data, select a theme and generally set up most aspects of a small-ish website which also allows you to upload to multiple host types and service provider sites, all in one place.

It only took a couple of hours to understand it, and I was able to get the site up and looking very similar to the WP theme which people were used to, all with a simple built in theme. I was actually quite impressed.

It doesn’t require any technical knowledge really, but some might need help setting up some of the upload settings, but nothing difficult at all, and it literally generates the site locally, and just uploads that.

It seems to work well across Windows and Linux (and I’ll assume Mac) because of its Electron based nature, and is quite fast in usage which I know is something not all Electron based apps can say.

I wont be using it for my homepage or blog any time soon - mainly as I’m happy with the solutions I have for those - but for random one-off static sites with some media assets, and when I don’t want to hand code anything, it’s not a bad solution to have in reserve, and especially if you’re working with someone else on a site as Publii seems quite happy to set the working directory to a sync’d folder. Two people trying to work at the same time might upset it, but for just simple collaboration, I expect it’s fine.

Looking at the homepage, they also have a marketplace for themes, plug-ins etc., even though the main application itself is under the open source GPL license. I’ve seen this system with a few CMSs before, such as Grav and Concrete5 and it seems to be a way to balance developing solid open source software with actually having some income. There’s also quite a few free options too.

So there we have it - it’s a nice local solution to make a home page and update it based on a fewer number of pages. No online app, no databases, no text config files to play with - it’s all in a fairly nice user interface, so if that sounds of interest then have a look at it for sure.