124 comments

[ 3.6 ms ] story [ 236 ms ] thread
Out of these, what do you guys recommend?
I personally jumped from Wordpress to Kirby years ago and never looked back but it obviously depends on the types of projects you work on. For my use case it works perfectly.
Special mention to Processwire. Worked with it a few years ago and really loved it at the time. https://processwire.com/

Craft is great but a bit slow in my tests. They have a really powerful e-commerce offer though and is really flexible.

+1 for ProcessWire. I am not doing freelance dev anymore but for the small set of sites I still maintain I love doing updates for the ProcessWire installs and dread it with every other project. Anyone shopping for Wordpress alternatives should definitely check it out. The only project I’ve tried recently that is as fun, flexible and productive is Astro.
+999 for ProcessWire. It's my CMS of choice for 10 years straight and is actually a pretty good platform for web applications as well (with some limitations compared to something like Rails or Laravel since configuration is stored in the database).

I made this 36-part video series comparing WordPress to ProcessWire which I recorded on-and-off between 2014-2018 and released it that year. Although that was a while ago, it's still mostly accurate since both systems are mature and haven't changed drastically in that time (this is before Gutenberg): https://www.youtube.com/playlist?list=PLOrdUWNK38ibz8U_5Vq4z...

Also worth a read: https://processwire.com/about/wordpress-vs-processwire/

For the JS devs, ProcessWire has a similar approach to Payload CMS from what I've seen (although ProcessWire dates back to 2003 and open-sourced in ~2010/11).

Best CMS ever. :)

Totally agree! Processwire is super simple for simple things and is super extensible if you need anything custom. There's nothing I couldn't do with it and PHP isn't even remotely my language of choice. It gets the job done with tremendous flexibility.
Thanks for mentioning ProcessWire. I've heard of it but never looked. Just spent a couple of hours fiddling and I have to say - really like the look of this. Thank you for bringing it to my attention!
ProcessWire is great and it’s the perfect example for the OP’s main criterion “can be downloaded, dropped onto a server, and you’ll have a website”! One great thing about it is that that’s also how you update it. Download new version, replace a single directory on the server, and you’ll have the new version.

For a WordPress alternative, however, ProcessWire is perhaps not batteries-included enough. Like many of the systems in this thread, it caters more to developers who want full control over their site. For someone who just needs a blog with maybe a contact form and wants to choose a nice “template” and be done with it, ProcessWire isn’t a good fit. While it has “site profiles”, it’s lacking a lot of traction in that area, as well as a consumer-oriented marketplace that’s nice to browse (screenshots, curation etc.).

But for anyone who wants to build something more complex, it’s a great choice. Cozy little community, too.

Switching to a static site generator seems like the way to go for lots of sites, especially blog-only ones.

Are there any graphical SSGs that non-technical users could run locally to generate a site and upload it to their web host?

I haven't used it since forever ago, but Lektor [0] is this weird in between. You need to be able to pip install and run `lektor serve` in the terminal but most else is done in the browser.

[0] https://www.getlektor.com/

Sounds more like WordPress than what I was thinking :)
I used Lektor recently. I was OK but I found the editor UI awkward and things like tags and subjects difficult to manage, and there didn't seem to be much in the way of current support or a plugin ecosystem. Publishing directly to a server with Git push and only having html online was nice, though.

I might go back to it. I switched to Wordpress but I blog so little it seems like overkill. AFAIK Lektor doesn't have a way to crosspost to Mastodon and I don't want to learn enough Python to write a plugin myself.

I used it not longer after it launched and it had (perhaps understandably) a lot of rough edges. I haven't bothered trying since I switched to Hugo.
I've used Netlify for a while now for a lot of my basic static site customers. You can easily transfer a domain, they have automatic builds when you commit to several different source control vendors like Github or Gitlab.

They have a ton of services and I was using them when they still a startup and Mathias used to personally answer your emails. Now they're pretty big and have a host of different services they offer. Their analytics are still in need of some help, but their services are rock solid and very, very affordable.

They were really the first company to push the idea of JAMSTACK (Javascript, APIs, Markup) and have really been pushing that envelope ever since. They've also acquired several Y Combinator startups recently.

https://www.netlify.com/

This is a big problem with the "blogging CMS" market.

A technical person who just wants a blog can easily set up a SSG, or even write their own CRUD app, in just a couple of hours. So they don't really need a WordPress alternative.

A non-technical person, on the other hand, will want (if not need) at least a few plugins and themes to set up a blog. Anything that can't be auto-installed on GoDaddy or requires manual file editing and/or shell commands is right out. Most of the alternatives are sorely missing in this department.

> Are there any graphical SSGs that non-technical users could run locally to generate a site and upload it to their web host?

https://getpublii.com is amazing and it's strange it doesn't get more attention.

>especially blog-only ones

I disagree. I think a blog should have comments. And I've yet to see a commenting system for static sites that is free and that works as well as WordPress.

is Drupal getting better for ordinary people to deploy? it was my choice 15 years ago

it's sad python, rails,node never had a rival platform to replace WordPress over the years, long live php for the web

Doubt it, it mostly went more corporate over time.
Drupal has gotten more difficult for 'ordinary' people to deploy. That's a big reason there are many times more sites still running Drupal 7 than there are running the current release: https://www.drupal.org/project/usage/drupal

The complexity compared with something like WordPress is a big part of the difference in install base. Drupal powers under a million websites (I run 3 of those). WordPress powers something north of 450 million websites.

It's hard to upgrade from Drupal 7 to Drupal 8, but it's really not hard to deploy anew. The "Drupal CMS" initiative is trying hard to lower the already low barrier to entry.
I don't understand the "Drupal is hard" mentality on HN. Drupal is just as simple as WordPress to deploy. Unzip, plug in database credentials and go. It's better with composer, but there's some real prejudice against it. Drupal 7 is admittedly too complicated but the new Symfony-based Drupal is fun to develop. I used to use WordPress and after the first few months of Drupal I realized how much better it was at, like, everything, than WordPress is. It's been buttering my bread for 6 years now and I think it's better every release.
I've been wanting to setup SSG for a while now. However, if you want something hosted that is free and no fuss I've really been enjoying hashnode. Idk how long it'll last but it dumps all my blog posts into markdown files on GitHub and has worked great for me. Devs respond quickly to issues. Even bringing your own domain is free. Not sure how they plan to make money yet.

https://blog.rayberger.org/

TextPattern use to a thing like around the same time WP got started.

It’s also PHP based.

https://textpattern.com/

If I remember correctly, TextPattern was done correctly compared to WordPress. Unfortunately, that meant it was more complex for most developers to go deeper. The community flocked to WordPress, and every other one became more of a niche.

Didn't they also have a Markdown-ish writing style? I liked that, and I used it as a plugin for WordPress for a very long time.

TextPatten went slow and now seems to have been chugging along well.

strange that no aws-based alternatives exist

for low traffic websites cloudfront + lambda + dynamodb is free

> The criteria for this list are "Can it be downloaded, dropped onto a server, and you'll have a website?"
I've just moved my stack Astro deployed on Deno Deploy and it's been very very fun and easy. Really like it. I just copied all my Svelte files over and it worked. I copied over all my Deno files and it worked. And it's building static pages onto Deno, effortlessly. And I'm just pulling in content from Notion and Airtable as CMS and caching on Deno KV, and that's also very very easy.
If you are looking for a no-nonsense, simple blog platform consider Bear[1] - It's super simple to use, and has been solid for me for the past year. Plus the support (and dev - Herman Martinus here on HN[2]) is responsive and friendly.

[1] https://bearblog.dev

[2] https://news.ycombinator.com/user?id=HermanMartinus

Emphasis on platform.

> Bear Blog has been built as a platform and not as an individual blog generator. It is more like Substack than Hugo. Due to this it isn't possible to individually self-host a Bear Blog.

Thanks for the shoutout!

For clarity, as a sibling comment has pointed out: while Bear is open-source, it is a platform and not managed hosting of individual blogs. If you're interested in self-hosting something that looks like Bear, there's a free Hugo template[1].

If you're happy using a platform, then Bear is super fast and built with longevity in mind (at both the tech and organisational level).

[1]https://themes.gohugo.io/themes/hugo-bearblog/

Sharing the Hugo theme is a great move Herman. I'll be starting a Bearblog now, all thanks to this comment.
For developers, there are many alternatives, but for the vast majority of use cases, there really aren’t any.

WordPress is popular because it’s a dead simple way to make a website that doesn’t require any technical skills - and has been this dead simple solution for almost the last two decades. Most of the popular hosts come with WP installed, so there is no need to install software on a server (a fairly “technical” thing to do.)

Realistically the only alternative for these users is another website builder like Wix, Squarespace, or Shopify. The hosted version of Ghost is pretty good too and probably the single closest thing to WordPress.

Plus the large plugin library.
For us, it's the huge existing user base of people who know how to do authoring/publishing in WordPress. (Even if they don't have the skills to understand what they're doing installing plugins sensibly, we mostly don't hand over Admin role accounts ion we don't have to.)

I don't want to hand hold a small business owner through writing markdown or how to commit to git to get their homepage edited. I want to be able to tell them "Just ask around your staff or family or friends, someone will know how to update your wordpress site, or one of them will at least know somebody who can. Failing that, go to your local craft/hipster coffee place and ask anyone with a laptop open for suggestions."

(comment deleted)
If one is looking for a simple/personal blog and wants to write in plain-text Markdown, one should consider Jekyll on GitHub Pages[1]. The beauty is that one does not need to worry about setting up Jekyll on the local machine. Just write and push to Github. If one wants to skip that, just go to GitHub and write there; a version of VSCode is built in there.

This also allows one to carry (take out) their content anywhere on any platform that supports plain text (MarkDown). Browsers can also just render plain-text as it, so if you just drag-drop them on a server, it should render as your website.

I have a pretty large personal site[2], and I hate Jekyll because it takes too long to compile locally, but I’m on it because I don’t let it interfere with my writing.

As for a WordPress replacement/alternative, it is going to be pretty hard to find something as prolific and click-clacky easy as WordPress to start off. It has like two decades of the mother of all kitchen sink built-in for anyone to jump in and rummage something out it.

Update/Edit: Github Pages has also become rock solid stable too. No downtime in the past 3+ years.

1. https://pages.github.com

2. https://brajeshwar.com/2021/brajeshwar.com-2021/

Its solid advice if that is your problem and if you are migrating from a standard wordpress. I ran into another problem - I wanted a static site[0].

I tried some of the static hosting engines, including Jekyll, but they always seemed to want to force my site into a blog format. Yeah with some work they could partially be twisted into what I wanted, but only partially.

Do you know of a static website builder that builds websites, and not blogs?

[0]: The difference to me is that my content should never have a date associated with it, and the landing page should be a landing page, not a list of recent pages.

Build your website like you would normally and then crawl it to build a static html site.

Years ago I used some npm library that was like a fancy `wget -r` for this purpose. I was generating a static site from an express server I made.

Astro is pretty nice if editing content in markdown checked into the repo works for you.
What do you do about images?
My first thought too.
I've done this sometimes with hosting images and other large files on a combination of Flickr, Wikimedia Commons, Internet Archive, and Zenodo. Flickr costs money, but it feels like it's worth it given I'm using Netlify and all the others for free.

I know some people use S3 services for hosting images, but then you have to worry about generating your own thumbnails etc. and it's trickier.

> I know some people use S3 services for hosting images, but then you have to worry about generating your own thumbnails etc. and it's trickier.

This is one reason why I started asking, “Is this image really needed for this article.” As for the thumbnail generation, I used to have a few Photoshop actions that I just click and be done with.

Now, I just manually optimize the few images I uses in such a way that it is somewhere in the middle -- CSS can still shrink it as a thumbnail but the original isn't that too large either. Something like that.

If you still maintain that a popular website to worry about images that much, I would try out CloudFlare image service.

There are two ways I have done and both worked for me. It is outlined in my article https://brajeshwar.com/2021/brajeshwar.com-2021/#q-what-abou... and here is the gist.

1. Move all of your images and static assets (zip, downloads, pdfs, videos) that are not part of WordPress textual content to something like S3+Cloudfront. Maintain that as in a sub-domain `https://static.brajeshwar.com/` Now, start using it in your writing as `<img src=“https://static.brajeshwar.com/2024/beautiful-picture.webp”>`. This makes it easy and allows you to switch WordPress hosting providers in minutes if not seconds. In my case, around late 2000s and early 2010s, I keep getting warned by Media Temple (mt) of the bandwidth and so Amazon’s S3 came to the rescue.† WordPress plugins are a galore that does the re-direct. That solved multiple problems - not tied down to a particular hosting provider, a CDN that is simple and cheap. Thus, moving out of WordPress with the text that contains those links will continue to just work.

2. Once you move to Static HTMLs, in my case, I felt that it makes more sense to just have them together in one folder — `brajeshwar.com` with everything in it — all the files. I also tend to ask the question and try answering, “Can I move out easily?” That has let me to not use images and other non-essential contents as much as I can avoid. An article/post should continue to work and be meaningful even if the images fails.

† My website was kinda of a deal back then. Now, CloudFlare claims that my website does about 4-5GB a month in bandwidth. This is after I have deleted many, delegated most downloads to Github, and to S3+ CloudFront sub-domains such as `cdn.oinam.com` and `archives.oinam.com`. During the days when (mt) complains is when it hits like 50GB a month on downloads, etc.

In all of this, these days, I pay single digit dollar every month to maintain my entire personal website and the remnants of its past. I don’t want the links from Adobe, Google, Wikipedia, the Chinese, the Russians, etc. to end up in a 404.

If you don't mind paying a few bucks a month, you can give my service [1] a try. I actually designed it with that specific use-case in mind. Handling images is the biggest PITA for static-site generators.

There are other image CDNs (Cloudinary, Imagekit, Imgix) but they have been designed for developers and are prohibitively expensive beyond their free-tier.

[1]: https://magecdn.com/

What about them? Git can store images just fine, even though it’s not optimized.
I wish more people came across https://getpublii.com as a middle ground between full-on SSG and a hosted CMS. It's so damn good at this point.
Yes, yes, I was there Gandalf. I was there 3,000 years ago. I tried Publii during its early release or beta (I think it was popular on HN). Unfortunately, I felt that it encapsulated too much for me and my site just died -- similar issues with waiting for my tea to boil while Jekyll compiles a simple style change.

I hope it is much better now.

I took a new look at Publii. Recently more support for websites instead of blogs. Great!

But collaboration seems to be a problem. You can sync the workspace using dropbox or syncthing, but there can be conflicts on the sqlite database.

There is git support, but that just pushes the published page into git.

Are there no better interfaces for mortals to SSGs?

Lack of collaboration and proper git support are a big hold back for me. Otherwise, it is not bad.
I wanted to update my thoughts on Publii. I downloaded it again yesterday and I think I'm going to use this for some of my other websites. This is looking much better and pretty interesting now than I saw it a while back. They even have a good revenue model working for them; I saw the marketplace.
A blog without integrated commenting is not a proper blog, IMHO. And sure, you can add 3rd party commenting to a static page, but from what I've seen none of them are as good (or as free).
Technically, that’s still just a website with comments. A proper blog also has RSS and Atom feeds and supports Trackbacks and Pingbacks.
For personal blog, I have found the following alternatives:

- Chyrp Lite: lightweight blogging engine, written in PHP. https://github.com/xenocrat/chyrp-lite

- Typecho: a PHP-based blog software. https://github.com/typecho/typecho

and file-based static content generator:

- Quartz: Publish an Obsidian vault as a static site. https://github.com/jackyzha0/quartz

- Logseq: Publish a Logseq graph as a static site. https://github.com/logseq/publish-spa

also Jekyll templates:

- https://github.com/maximevaillancourt/digital-garden-jekyll-...

Why is GitHub better than WordPress?
Static sites are ~impossible to hack, whereas a WordPress site needs to be kept constantly up to date or else. And as we've learned recently, you're only one Matt tantrum away from having the flow of security updates interrupted.

You could use another host because GitHub if you'd like, but GitHub Pages is unambiguously better than WordPress unless you actually need a CMS.

I don't see framer here but it seems like it's getting popular recently. Can anyone share their experience with it?
none of these look attractive to me … what about a clean fork of WordPress?
You're going to encounter various limitations with the CMS that it was designed for. I'll say this once: if we need a complete rebuild in 2025 and beyond, the Astro web framework could be the core engine due to its unopinionated nature and support for many UI components, including the latest addition, VanJS. It's seem like a well designed to keep things as simple as possible and still open to community feedback.

Of course, you could host it on Netlify, Cloudflare, and Vercel using adapters from Astro. Although it's not a traditional CMS, it's capable of serving as the core engine that should serve well for 99% of use cases out there.

+1 to ghost. built in node, supports the standard stuff you'd expect and new school.
I did what any regular (in)sane developer would do when faced with this type of problem: wrote my own from scratch...!
(comment deleted)
> "I have not used Kirby in client work, but I hear only good things."

Not a great idea to recommend something based on hearsay. There's good & bad things to hear about any CMS.

One inexplicable decision by the Kirby team was to push their politics by "taking a stand" against Twitter, suddenly cutting off their account. This leaves you wondering if Kirby is abandoned software since their top post is from Jan 2023 announcing version 3. https://x.com/getkirby

If you don't like Musk, why on Earth would you rattle the cages of your potential customers with such views? It's possible to use Twitter/x in the most minimal way, disable replies, post every blue moon. At least keep the latest version visible. Twitter is essentially an online feed of you business activities. From a potential customer point of view, Twitter is agnostic to "where is your software at" research. Ending your timeline in a principled huff, isn't smart.

Meanwhile, in the article:

> "Statamic.... I think if the cofounder hadn't brazenly endorsed a horrendously damaging politician, I'd have tried it."

All aboard the facepalm express. Is it too much to ask to keep politics out of software recommendations and social media version announcement updates?

> This leaves you wondering if Kirby is abandoned software since their top post is from Jan 2023

I mean, the project has an official website and a public repo on GitHub. I’m not sure why we’re expecting Twitter to be an official update channel. It clearly isn’t anymore.

I mean, someone casually reading about CMS options or related topics on Twitter might see an old mention of Kirby. They click, see no new posts and move on.

Obviously someone with intent to specifically look up Kirby, will go beyond their social media scrolling. I'm talking about the multi-tasking rapid-browsing people who give a seconds of attention to a possible lead. Why risk losing those leads because you "don't agree with XYZ"?

More the problem with Kirby is the admin still using Vue 2, so if you use Vue 3 for everything else and want to make a plugin, you have to go back to how you used to write Vue and no longer do.
> > "Statamic.... I think if the cofounder hadn't brazenly endorsed a horrendously damaging politician, I'd have tried it."

> All aboard the facepalm express. Is it too much to ask to keep politics out of software recommendations and social media version announcement updates?

One on hand (the business side and the being-a-professional side), I do agree, on the other hand (ethics ?) I disagree that tech should get a free pass regarding political concerns. Overall, I think this sentence could have been phrased more professionally/politely, 14yo sarcasm is annoying. Something like "I can't recommend Statamic for personal reasons." (I know it's still a political statement but it feels less childish and more personal). I know it's a meta and larger debate and that HN as a whole wants/needs (to maintain its level of discussion) to talk about tech without the political implications or concerns but these concerns are still there, I think hinting at it is okay, making it the whole talk is annoying for everyone. /meta

> All aboard the facepalm express.

That still puts a smile on my face 15 minutes later :D

> Is it too much to ask to keep politics out of software recommendations and social media version announcement updates?

Frankly, yes. Things have become so bad that the more people taking a stand and showing they don't support a party that has no issue with racism, sexism, misogyny and various other kinds of bigotry, the better. Sitting on the sidelines shouldn't be an option for most ethical people based in the US, IMO.

Your reply is exactly the reason to keep politics out of software recommendations. Dialled in hyperbole, frantically listing your grievances about XYZ, isn't the moral high-ground you think it is.
Wrong. There was nothing hyperbolic about what I said.

And being against bigots is always a moral high ground.

> This leaves you wondering if Kirby is abandoned software since their top post is from Jan 2023 announcing version 3

Most people do not judge if software is abandoned based on Twitter, as most people do not have Twitter.

What does it mean to "have Twitter"? Browsing the website?

I have never "had Twitter". Only ever browsed it. I did stumble upon the Kirby abandoned profile, and the first thing I thought was "another CMS abandoned"... You see, a lot of CMS applications have been abandoned, as you may know. I'd recommend if your CMS is still going strong, and you're selling licences and making updates, to make sure nowhere on the internet gives the opposite impression. Particularly when it costs nothing to keep those details updated.

Matt Mullenweg is being an asshat about WP Engine (and in general) but that doesn't mean you have to jump off WordPress. That's actually the power of the GPL: it's enshittification resistant. The flipside of this is that you can't stop freeloading. In fact, freeloading is a feature, not a bug.

Now, if Automattic had CLA ownership over 100% of WordPress, I'd actually be scared, because they could strip the GPL off of new releases and lock the system down. But as far as I'm aware WordPress's copyright ownership is distributed, so Automattic can't just change the license to the Fuck You, Pay Me Public License and rugpull the whole community.

The worst part about this drama is that Matt's not even wrong. WP Engine is kinda shit[0]. But Matt's behavior is extremely unprofessional and he's making WP Engine into the victim of an extortion campaign.

[0] If you're wondering, the thing that makes it shit is not that they disable revisions. It's that they have significant reliability issues, both with their shared and dedicated offerings, and their support teams do not have visibility into their systems to fix those issues.