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.
- 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-...
My personal Hugo-based blog for reference: https://github.com/minimaxir/minimaxir.github.io
I hope it is much better now.
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?
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.
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/
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.
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.
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.
Middleman is nice if you need something more flexible than what Jekyll can offer.
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.
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.
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."
I ended up using Dotclear for my own personal blog after years of using home-made blog engines. By default, I was going for WordPress initially, but configuring it and creating a custom theme that looked like I wanted it to look like was a mess. I felt like I had to learn a whole new technology stack instead of being able to use my PHP, HTML, and CSS skills. In comparison, Dotclear was a breeze to work with, and after days scratching my head on the complexity of WordPress, it took me maybe like two hours to get where I wanted with Dotclear, including the time to discover and installing the software. I enjoy it very much since then!
See https://dotclear.org/ for more information.
Anecdoticaly, Dotclear is older than WordPress (2002 vs 2003) :).
I need a WordPress alternative to/with the following requirements:
- self-hostable
- opensource core (paid plugins are not a problem)
- so it can be installed and intensively tested without shelling too much money just for R&D
- has ACF equivalent- has a visual composer à la Gutenberg, a middle-ground between WordPad editing interface and Divi/Elementor
- so the marketing/press department can push content fast
- REST API - to hydrate stuff
- optional: needs to have been around for 5 years- optional: needs to still be around in 5 years
Ghost has no ACF apparently (https://forum.ghost.org/t/custom-fields-for-posts/1124/46 and https://github.com/TryGhost/Ghost/issues/9020) and Astro is too custom as of now and I don't want another Gatsby (too short-lived).
Also, a simple and workable e-cart
I tried many alternatives. Their upgrade path is painful.
Craft is great but a bit slow in my tests. They have a really powerful e-commerce offer though and is really flexible.
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. :)
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.
I can highly recommend Wagtail CMS:
It’s based on Python/Django and has an excellent developer and user experience. They pay a lot of attention to detail, including a block-based content editor, similar to Gutenberg, and first class accessibility support.
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).
> 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.
Out-of-the-box you've got a responsive theme, built-in accessibility, multilingual capabilities, a security team, and the accumulation of 23 years of tried-and-tested code.
The efforts that are being put into this new product are making it as easy to use as any other CMS, which is a huge leap for Drupal.
Add into the equation things like the new AI initiative (http://dgo.to/artificial_intelligence_initiative) where you can literally configure the site through chat as founder of Drupal, Dries Buytaert, recently demonstrated asking AI to create a categorisation of wine tour events based on the top 20 wine regions (https://bit.ly/wine-tours-taxonomy) I have a feeling that, based on my 21 years of using it, I think Drupal's going to surprise quite a few people over the next year.
I don't just use it as a CMS, I leverage native commerce (http://dgo.to/commerce) and CRM (http://dgo.to/contacts) modules in order to have a fully integrated framework which, architecturally, enables me to create functionality that would be expensive if even possible using separate systems.
There's even a no-code suite Drupal ECA (http://dgo.to/eca).
I could go on...
You'd think that after all those decades there would be a modern, open source solution that offers the same and more functionality (not... less, looking at you SSG wanabees) but with a cleaner, safer and easier to use stack that is liked by both technical and non-technical people.
Stands to reason that such a leap forward in web publishing should be technically possible (the requirements are clear and dont need AGI) but there is also some truth in the saying "its the economy stupid, thats why you can't have good things": There is no economic incentive in this direction in the modern digital landscape.
There are consequences to popularity. For example, if you need help it's a lot easier to find both self-help guides and technical people to help you. There are a lot more extensions or 3rd-party tooling. Even if there are exploits there are a lot more eyes on the problem and fixes come sooner.
So there are other WordPress alternatives, they're just less popular with all the consequences that come with being a minority player.
Lots of good suggestions here, but a lot of them are for complex development stacks. My criteria was something that can be installed and ran without having to do much wiring up. That being said I do love me an SSG and content API, my own site is Eleventy hooked up to Ghost.
Also saw some suggestions like Drupal and Joomla, I may add these but from personal experience I've almost always been migrating away from them. There's a reason they're popular though.
Ps. Sorry if you got upset about the political spin, but it's not escapable. Tech is not exempt from politics.
it's sad python, rails,node never had a rival platform to replace WordPress over the years, long live php for the web
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.
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.
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.
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.
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.
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.
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.
WordPress is not bad, it has its purpose and works well. It's bad when you try to make it do things it wasn't meant to with dubious plugins. I made some money on WordPress and I understand why people started using it and why they still do. It's very hard to replicate the community support that took years to build.
Eventually I switched to a custom-made SSG because clicking around an admin area is very slow, and because of serious bugs with the WYSIWYG editor led to content loss that was very hard to fix. Editing plain text with familiar purpose-built software, and deploying with source control and branches is incredibly valuable.
I wrote more about the reason and benefits of the switch here: https://nicolasbouliane.com/projects/ursus
Paired with caching/static frontend, it's more than enough to power small to medium traffic sites.
https://github.com/frappe/builder
Visual website designing + publishing, built on Frappe Framework
I used it for a project once and both me and the client were happy. It compares to kirby.
Having a world where ecochamber credentials and political adherens is as far from an open and inclusive society.
It’s also PHP based.
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.
Much more setup to get configured, but it's far more customizable and stable once you do.
WordPress may be a bit directly comparable to https://www.coderedcorp.com/cms/
It's just a few extensions on Wagtail that let you get started with common page models for blogging and generic websites out of the box.
I often think of Wagtail as a framework for building your CMS, where as WordPress is a pre-built CMS.
Disclaimer: I'm on the Wagtail core team.
On top of that (assuming that extra investment is possible / desirable) the abstractions layered on top of django are quite opaque and have a steep learning curve. Having to code standard CMS functionalities becomes an eye-rolling exercise.
You only said you thought it wasn't ready for prime time, which I think a reasonable interpretation is that you were saying you didn't think it was ready for production use.
> Would bet that none of those production deployments are without some non-negligible developer time investment.
That's the thing, I think the time invested is pretty negligible. Especially when compared to maintaining wordpress and having to deal with plugin craziness.
> Having to code standard CMS functionalities becomes an eye-rolling exercise.
You only really have to setup models for pages, tags, categories etc, after that the editor is incredibly functional.
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.
for low traffic websites cloudfront + lambda + dynamodb is free
In terms of setup, it's just like — enter database credentials and start making pages. There's plenty of themes out here and HN users aren't stupid — everyone knows how to compile their own CSS and use composer if they want to.
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?
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.
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.
> 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
Most people do not judge if software is abandoned based on Twitter, as most people do not have Twitter.