You're building something for a volunteer community, which means at some point you'll be gone and somebody will be wondering how the heck to manage the site with this "custom" setup that they can't figure out with chatgpt or a youtube video.
Set them up for the future, not for the now. WordPress. Just WordPress.
Reference: 26+ years in hosting, 4 years in WordPress-only hosting.
Wordpress, give them email and password, and a .pdf with screenshots on where to click to create a new post/page or edit stuff.
It required constant developer oversight, even when only publishing one or two articles a week. Things broke all the time. Builds broke constantly. Things went wrong left right and center.
Don't do it. Give them a Wordpress site.
Pros, a ton of docs, easy non-technical customization, long term support, many already experienced users, made for basically exactly what you're doing.
Cons, it's WordPress, and the actual wp-loop is a nightmare of bad choices.
I don't think the LLMs change the argument either. If anything, dealing with the complexities of wordpress could make it even more difficult without someone who knows what they're doing.
Somewhere around 15 years ago, I thought wordpress was viable, but I think we need to leave it in the dust. I worked with it again 5 years ago, and the situation was no different from what I could tell.
Just set them up on a website builder like Webflow/Framer/Ycode/Squarespace/etc that has a CMS built in.
They complained about it constantly but they kept paying (7 years and going when I was doing work for them which by they way they constantly tried to shortchange me). Never feel bad about taking money from a company, its just business. Setup your income stream and take care of yourself. I'm not sure why there is this bizarre self sacrificing mentality in tech to make other people rich at your own expense.
Not to mention if you invoke those companies you are putting yourself in their walled garden that makes them money and takes control of your income away from you. Why would any person want to do that? There is no moral quandary here.
Buying into proprietary software and walled gardens is ridiculously common and acceptable in a business environment. That's code for "no liability if something goes wrong, minimal maintenance, and easy onboarding of new employees."
Even AI assisted it's going to be rough.
It's important to remember a vast majority of people have never used their desktop computer for more than MS Office and Google Chrome (facebook/youtube) and maybe ChatGPT now (still only 34% of the US population).
Heck, dealing with a file system is already too much complexity for most of the population.
Navigating around some enterprise-y headless CMS UI is already going to be a big ask. If these volunteers are anything like the ones I've dealt with before, they're going to struggle to even get past basic auth (which email did I use? What's my password again? What the hells a password manager???)
Though given that the psychopath alleged-incestuous-rapist Sam Altman has been the top user on the site since literally day one I suppose I shouldn’t be surprised
I've used it alongside Astro for both my personal blog[2] and two company sites[3][4]. It's worked amazingly well each time.
[2] https://github.com/skeptrunedev/personal-site
Other Headless CMS felt restrictive, with shared drafts or the requirement for all published items to have changes go live instantly.
Once you're set up with your schema, the UI is easy enough for non-developers (and you can customize it for them if needed).
Headless is for sharing a common backend between a web site and phone apps. If you don't have the resources for the apps then it serves little purpose.
Or build/add an API when needed
We are sticking with it for now because it’s indeed good enough and I haven’t found any better options (give the price).
"Strapi applications are not meant to be connected to a pre-existing database, not created by a Strapi application, nor connected to a Strapi v3 database. The Strapi team will not support such attempts. Attempting to connect to an unsupported database may, and most likely will, result in lost data."
Unfortunately, most of the time I do not have such luxury. What are the CMS options for pre-existing databases?
Can you run some migration scripts to port the old database content into a new CMS?
Basically it provides a UI and all changes are pushed to GitHub which will launch the release process back in Netlify.
Seems it might fit your requirements too.
One downside for this setup, is that uploaded media are not re-sized or compressed (since there is no backend job doing it), so a client must be briefed into "making smaller images" (on the web client side with squoosh.app[2] for example), or using a SSG that does that built-in (hugo, gatsby)
1. https://decapcms.org/docs/gitlab-backend/#client-side-pkce-a...
https://www.drupal.org/docs/develop/decoupled-drupal https://www.lullabot.com/resource/decoupled-drupal
Drupal has a really strong community behind it, and was completely rebuilt a number of years ago with modern PHP. It uses Symfony, composer, etc.
[0]: https://directus.io/
[2]: https://www.meilisearch.com/
[3]: https://directus.io/docs/guides/extensions/api-extensions/ho...
Some will give you the service for free (rate-limited, probably), while others may not give you a break at all.
I will say Caveat Emptor. If you keep your backend on Someone Else's Machine, they can hold your data hostage. Hosting should be fine, but some SaaS companies have a nasty habit of considering any data they have access to, to be "theirs." May be fine, until they sell the company, at which time, bend over and squeal.
Source: Been doing nonprofit development work since last century.
I love the single binary approach, and it being so simple. Got my blog up and running in minutes with absolutely minimal configuration. Helps me focus on the writing rather than tinkering with the tool I think this coupled with Keystatic [1] could be a nifty little lightweight setup for most.
I'd like to recommend a highly underappreciated single binary rewrite of Jekyll in Go: https://github.com/osteele/gojekyll
my-blog-article-title.md seems enough, and dates usually feel like clutter, since titles are distinct as they are and you don't really need the date in the filename to do anything useful.
But again, different people prefer different setups.
Professional work above that: Sanity [4] or Hygraph [5]
Because its so popular and been around for so long, theres tons of free themes, plugins and videos which will reduce your support burden - plus your admin could get help easily as its not something you rolled.
Other than that, decap on gitlab is easy to run for free, and will provide the admin with a ui for editing content. Astro is also great and stable for this type of thing.
So far it works pretty well and my gf is also able to use it on her own, so you could say its non-tech user approved haha
I also did some websites using hugo and DecapCMS from netlify. That also worked but the ui isnt to fancy and it gets a bit confusing on complex pages. But it can directly push to a git repo so you have version control out of the box
like if you dont have any money you can get wordpress hosting for free from wordpress.com
Go with a regular CMS, like Wix or Squarespace or WordPress. The $10 or $20 a month is still cheaper than having to pay a dev later to fix their broken headless site with old deprecated packages and frameworks that nobody uses anymore.
Headless is a developer optimization, not a client feature. It only makes sense if the dev is a part of the customer's own team, or in an ongoing agency relationship with them. It's a poor fit for freelancers and volunteers because the client ends up with essentially abandonware.
To manage deploys, I have used Cleavr, which does a good job at it without being too user-unfriendly. That’s a paid service, about $6/month.
- Strapi→ great balance of flexibility + control, good for small-to-mid projects. - Contentful→ solid for enterprise-level publishing, but cost is higher. - Sanity→ strong for structured content, especially for editorial teams. - Ghost (headless mode)→ works very well for content-heavy publishing.
As a software publisher, I’ve seen Strapi and Ghost perform particularly well for indie and startup-level launches. I recently published a project where Strapi helped reduce time-to-market significantly.
Curious what others here are using in 2025!
Well how are they then going to pay for their web hosting? Tell them to scram.
It's admittedly more editor-less than headless, but anything that constantly needs to runs on a server will cost more, in the end, even if it's a freemium service, right now.
Editing content with Obsidian and rendering it with Hugo is no too bad, btw. (see eg. https://www.nickgracilla.com/posts/obsidian-is-my-hugo-cms/ for a setup).
Now we are adding the ability to deploy workflows and agents. It can _also_ code websites: https://decocms.com
But alas its not ready yet - pre launch this monday.
Basically forget the “headless” bit and use a bog-standard CMS.
The cost is peanuts compared to the hourly rate of a developer to personally manage and keep secure their website for them.
As for static site, you think a non technical person can handle a static site generator and deploying to GitHub Pages? I doubt it.
Often times it gets very expensive to cheap out on things.
From own experience, the developer experience is awesome. Both are based in Europe, which is probably why those were not mentioned here before :)
You may also want to check things like Appwrite for hosted solution (free plan available) or PocketBase for self-hosting on any VPS (fly.io does not charge below 5$). Those are more developer-focused, but also should be much less restrictive.
Have no real experience with any of them.
It’s something a little easier than Wordpress for non technical people. Nothing is super simple but at least notion can be figured out more easily than code or admin panels. When you’re not there, they won’t be completely in the dark.
Just my 2c.
Still not much that was easier to create a website for a non-tech user.
Highly recommended.