Ask HN: Looking for headless CMS recommendation

I am exploring options for a headless CMS for a community website where a non technical admin will post details about events in the community like a meeting or volunteering done by the community. They don't have funding. What is the cheapest option out there?

76 points | by rakshithbellare 4 days ago

43 comments

  • geocrasher 1 day ago
    The answer isn't headless WordPress. It's WordPress.

    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.

    • mdrzn 1 day ago
      This is the only correct answer.

      Wordpress, give them email and password, and a .pdf with screenshots on where to click to create a new post/page or edit stuff.

    • aosaigh 8 hours ago
      Exactly. I don't know if they've gotten better, but I worked on a headless Contentful + Gatsby site (because the previous developers got sucked into JAMstack hype) and it was a comedic catastrophe.

      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.

    • dizlexic 1 day ago
      I hate to agree because I hate WordPress, but when building something for others especially in a volunteer community it's still the go-to solution.

      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.

      • justinrubek 15 hours ago
        In every experience I've had, non-technical people have had a terrible time doing customizations. Not a single time have I ever seen them successfully navigate customizing pages without someone else stepping in. I see this as the worst case scenario: non-technical people can't do it and technical people also can't because they only have subpar tools to do so. I disagree wholeheartedly with this assumption.
      • dabockster 1 day ago
        Same. Or maybe something using PHP just as a basic templating engine (like how people used to use it). Something that can be copy/pasted to a dime a dozen cPanel powered shared webhost at a moment's notice.
        • geocrasher 8 hours ago
          For better or worse, you just described WordPress.
    • justinrubek 15 hours ago
      In my experience, wordpress is very confusing for non-technical people to navigate. It is largely not different than a "custom" setup because it's always some patched together job of various plugins to the point that it becomes brittle and difficult to work with. I get the sense that technical people think it is more straightforward and prescribe it to people, but any non-technical person I've worked with is utterly lost in it.

      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.

      • farseer 11 hours ago
        Its just a website to post community events, don't think any plugins would be required.
        • SenHeng 45 minutes ago
          My wife downloads plugins for every little thing. One to hide hide the title from a page, another to display a gallery of images. Often she’ll forget and download a similar one again and they all break.

          Also instead of making multiple posts, she edits the same post over and over again, adding content to it.

          That’s how she was taught to use Wordpress at her old job and no amount of explaining or demonstrating will make her change her ways.

        • geocrasher 8 hours ago
          That never stopped anybody from installing them.
    • type0 1 day ago
      Why not Ghost instead?
      • michaelsalim 1 day ago
        Most people don't know Ghost. Almost everyone knows wordpress
  • skeptrune 1 day ago
    Keystatic[1] is awesome. It's local-first by default and made for static site builds, so you can keep costs low by not using a server.

    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.

    [1] https://keystatic.com/

    [2] https://github.com/skeptrunedev/personal-site

    [3] https://github.com/devflowinc/trieve/tree/main/website

    [4] https://github.com/patroninc/patron/tree/main/website

  • blakeburch 1 day ago
    I really enjoyed sanity.io a year ago. It had the best data structure flexibility by a mile, with the ability to have multiple user draft states and merge conflict resolution.

    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).

  • codegeek 1 day ago
    Why headless ? If non technical admin will post details about events, you can find a WordPress plugin for it and setup a WP site. Headless makes sense if you want to really customize the experience but you want "cheapest option" so I would assume they cannot pay for customizations anyway.
    • kevin_thibedeau 1 day ago
      How else are they going to synergize with the latest paradigm shift?

      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.

      • rovr138 19 hours ago
        > Headless is for sharing a common backend between a web site and phone apps.

        Or build/add an API when needed

  • leo_researchly 4 days ago
    We recently landed on Strapi. There’s an open source version but we use the hosted one (for now). All in all good. There are a few quirks in the UI (sometimes smaller changes weren’t saved - although this might be a user issue from my side) and the markdown editor could be more user friendly.

    We are sticking with it for now because it’s indeed good enough and I haven’t found any better options (give the price).

    • mkranjec 2 days ago
      IIRC Strapi is a great option for green field projects. C/p from their docs:

      "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?

      • mierz00 1 day ago
        I’m curious as to why you need to use a pre-existing database?

        Can you run some migration scripts to port the old database content into a new CMS?

  • edu 1 day ago
    I’m building my personal blog with 11ty as a static site builder and Decap[0], previously known as Netlify CMS, to manage content.

    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.

    0. https://decapcms.org/

    • ngc6677 1 day ago
      Also highly recommending decap CMS, or the svelte version sveltia[0]. With Gitlab backend and PKCE authorization, this CMS connects directly to gitlab without any other middleware (unlike when using Github, which will require one for the auth). With a gitlab pages + decap CMS + static site (jamstack), it is possible to have a site running at no cost. Currently having 20+ sites running this setup for clients and never hit an issue "modeling" the data as Decap config, widgets (also custom ones), can allow pretty much anything.

      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)

      0. https://github.com/sveltia

      1. https://decapcms.org/docs/gitlab-backend/#client-side-pkce-a...

      2. https://squoosh.app

  • Y-bar 1 day ago
    You have twenty good tips already, but nobody seems to have mentioned that you can run WordPress fully headless.

    https://www.gatsbyjs.com/docs/glossary/headless-wordpress/

  • steviedotboston 1 day ago
    Drupal works very well as a headless CMS now

    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.

  • rla3rd 1 day ago
    Wagtail CMS, built on top of django. https://wagtail.org/
    • type0 1 day ago
      I might be biased but I love wagtail mainly because of django, can't stand php insanity. I'm sure there are some good cms's written in Personal Home Page language, I just haven't seen any
  • whilenot-dev 1 day ago
    Used directus[0] (v9) for a customer project[1]. I needed to sync the CMS content with meilisearch[2], so I had to write a custom extension that registers some hooks[3] for that. I discovered some weirdness in the API, since the payload of a hook behaves differently whether the CMS change gets triggered via UI event, API request, or CSV upload. Was a bit annoying, but got it working in the end. Don't know if that improved in later versions, but I honestly also didn't keep up with development since the license change.

    [0]: https://directus.io/

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

    [2]: https://www.meilisearch.com/

    [3]: https://directus.io/docs/guides/extensions/api-extensions/ho...

  • wuhhh 1 day ago
    Craft CMS - https://craftcms.com - is superb and still seems to be under the radar, I often wonder why it’s not more widely used
  • yodon 1 day ago
    Headless is a constraint you added as a developer for yourself - it's definitely not a thing the users will care about. Ghost is a great, simple, batteries included non-headless CMS for things like you describe. Self-hosted or as a service.
  • ChrisMarshallNY 1 day ago
    If you have a registered nonprofit, like a 501(c)(3), you can often get a substantial break from some SaaS companies.

    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.

  • h4ch1 1 day ago
    I know this is for a non-technical admin, but I just wanted to give Zola [0] a shoutout.

    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.

    [0] https://github.com/getzola/zola

    [1] https://keystatic.com/

    • ibotty 1 day ago
      • h4ch1 1 day ago
        Decap's cool but I've never really liked their approach to UI/UX, also it was kind of painful to setup the last I tinkered with it.
    • mikae1 1 day ago
      Too bad it doesn't quite support dates in the dir paths.

      I'd like to recommend a highly underappreciated single binary rewrite of Jekyll in Go: https://github.com/osteele/gojekyll

      • h4ch1 1 day ago
        Hmm, personally I never really cared for dated paths, seems like a problem that's solved by metadata defined in the frontmatter.

        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.

        • mikae1 1 day ago
          > 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.

          I love to see when a page by posted just by looking at the URL. It also avoids naming collisions. For a static site, not rendered from a db, I wouldn't want to store every post ever written in one dir either. How well does that scale? Yeah, you can probably store 100K files in dir, but it will become unwieldy and slow to load when browsing a lot sooner. Just a dir per year probably solve any such problem.

          • h4ch1 1 day ago
            you're correct, I had mistakenly interpreted your comment as dates in file paths instead of dirpaths, and I would second this, it really gets unwieldy once you have 100k or even 500+ files in a single directory.

            Apologies for the miscommunication.

            Also

            > I love to see when a page by posted just by looking at the URL.

            would solve that with a URL path /2015/my-article-title; also creates a nice way to go to articles by year for example by simply navigating to the /2015 route

  • difu_disciple 1 day ago
    Dev budget under $25k: Statamic [1] or Wordpress (with ACF [2] & Acorn [3])

    Professional work above that: Sanity [4] or Hygraph [5]

    [1] https://statamic.com

    [2] https://www.advancedcustomfields.com

    [3] https://roots.io/acorn/

    [4] https://www.sanity.io

    [5] https://hygraph.com

  • pembrook 1 day ago
    I wouldn't be setting up a static site + headless CMS for a non-technical organization. This is basically asking for a constant headache.

    Just set them up on a website builder like Webflow/Framer/Ycode/Squarespace/etc that has a CMS built in.

    • citizenpaul 1 day ago
      On the other hand I worked for a small place that was spending over 250k'ish per year on website maintenance to a company that setup their headless CMS website that they sold them.

      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.

      • jslaby 1 day ago
        There is some truth to this. One of the fails we had was pricing our product too low, where it was looked at as a stepping stone to something more expensive, even though it provided the same exact functionality minus the fancy looking ui. There were businesses that wanted to get out of their existing application suite, but are hooked in due to management perception and the sunk cost fallacy. The company who overpriced considerably is reaping millions per year on that application. If I could just go back in time..
      • gjsman-1000 1 day ago
        > 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."

        • citizenpaul 1 day ago
          >common and acceptable in a business environment

          Duh.

          The comment context was in response to selling something to a company as a service. If you are just being an unofficial middle man between a SaaS and your customer you are going to make very little money. Its essentially uber for tech, you are going to be bearing the burden of all the implementation friction. On top of that you are acting as an uncommissioned sales person for the SaaS while they collect income indefinitely from your work.

          The difference in how you setup the deal is literally millions of dollars in the real life example I mentioned. I don't care about corporations. I want HN posters to make money for their work and skills rather than be used and tossed in the trash by corporations. Guess what? The company is still in business and doing fine. The owner just gets one less lambo per year and a developer gets to feed their family.

          Its also worth mentioning the obvious only reason they still pay the small consultancy is that they are constantly asking for changes and new things. Why would you want the extra overhead of working in someone elses sandbox when you have to do all the work anyway. Might as well be on your terms if you are going to do the work.

    • skeptrune 1 day ago
      If there's a no-code way to edit content and AI can work with the rest then I think it's fine.
      • pembrook 1 day ago
        AI isn't going to be much help unless the customer is comfortable vibe coding in cursor and isn't too intimidated by a git/serverless workflow...but firing up an IDE like cursor and dealing with git + serverless builds is still a huuugge ask for most people who aren't in tech by trade.

        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???)

      • nomoreofthat 1 day ago
        I honestly can’t tell whether this comment is satire or this site is just full of people who have no ability (or no interest) in understanding other people. You don’t need to be a psychologist or even have a good understanding of other people to recognize what a ridiculous suggestion this is. You just have to care a tiny little bit about other people. Is that really too much to expect?

        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

        • asp_hornet 1 day ago
          Fortunately the top comment seems to be a Wordpress recommendation but I agree with your sentiment completely. The industry has lost the care for people.
        • fragmede 1 day ago
          ctrl-f for sama on https://news.ycombinator.com/leaders shows no results, but please, tell us more about how you've generalized everybody here.
          • mediumsmart 15 hours ago
            its not nice specifically to call people names

            to generalize is to be an idiot

  • akmann 1 day ago
    Im using directus (https://directus.io/) for my personal website with a vacation blog and some posts…

    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

  • mrweasel 1 day ago
    Wordpress? Why does it need to be headless though?
    • racl101 1 day ago
      Some people might not like WordPress' templating system. Last I looked at it, admittedly 5 years ago, it was kind of annoying. I had to use Advanced Custom Fields to build weird things content types but the general blogging engine still seemed pretty good.
    • disiplus 1 day ago
      yeah, that's also what i don't understand, you can get wordpress for dirt cheap and don't even need a tech person to run it.

      like if you dont have any money you can get wordpress hosting for free from wordpress.com

  • shortformblog 1 day ago
    I use Craft CMS’ GraphQL capabilities with my Eleventy site. Works well and helps me keep my page loads static. I would also recommend Directus for this, as it has some nice quality-of-life benefits.

    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.

  • gadders 20 hours ago
    CityDesk if it was 24 years ago. https://www.joelonsoftware.com/2001/10/12/what-does-citydesk...

    Still not much that was easier to create a website for a non-tech user.

  • Nextgrid 1 day ago
    Ghost (my preference, to avoid security concerns around WordPress), or WordPress, if you can deal with the occasional security issue or use managed hosting.

    Basically forget the “headless” bit and use a bog-standard CMS.

  • mitjam 1 day ago
    In my experience, the cheapest way to serve content on the web is static, for convenience rendered with a static site generator.

    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).

  • loopduplicate 17 hours ago
    Cheapest? The most expesive part is going to be paying the person or company who sets it up, maintains, and documents it. I'm an expert at Drupal, so for my companies, Drupal is cheap and it can be adapted to grow and change over time as new ideas for the application are discovered; you don't know what your website will need next year so it's nice to have a CMS that is based on having the ability to adapt over time. Wordpress is only cheap if your ambitions for the site aren't big. Trying to do too much with it is a developer's nightmare. Peace.
    • loopduplicate 17 hours ago
      Oh, and unlike a lot of other answers, Drupal has great support for being headless, like you asked for.
  • miragecraft 1 day ago
    I think a hosted solution is best, unless you know for sure that they’ll always have a developer willing to volunteer their time to manage their server and keep everything up to date.

    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.

  • __oh_es 1 day ago
    Sorry I know you said headless, but have you considered wordpress? Its unsexy, but the ecosystem is really well suited for this and hosting is dirt cheap.

    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.

  • stophecom 1 day ago
    I'd recommend the following options. Both platforms offer enterprise solutions, but also provide free starter plans:

    https://www.storyblok.com/

    https://www.datocms.com/

    From own experience, the developer experience is awesome. Both are based in Europe, which is probably why those were not mentioned here before :)

  • forest_pink 2 days ago
    There are plenty available: https://jamstack.org/headless-cms/ Keystone mb?

    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.

  • mattmcknight 1 day ago
    I think it depends a little on what your intended head is? Headless CMS is just CRUD UI for a database that has an API.
  • type0 1 day ago
    Maybe https://getpublii.com/ it's a static site generator as an app for non technical people
  • Lucasoato 1 day ago
    PayloadCMS seems really interesting, I’ve used it successfully for a small blog but I feel it has a lot of potential. It’s not fully open source, if you want additional features like SSO you have to pay for premium version.
    • pembrook 1 day ago
      They got acquired by Figma so I would not build on payload anymore, I fully expect the product to wither away now given Figma has their own priorities and has a non-technical userbase.
  • sidcool 1 day ago
    Contentstack is pretty good in this regard. Headless, provides Personalization, Hosting, Analytics, Marketplace etc.
  • beingmudit 1 day ago
  • rkunal 1 day ago
    I am travelling right now. I wonder if I had used Wordpress for my blog because it has a fully functional mobile app.
  • carlosjobim 1 day ago
    > They don't have funding.

    Well how are they then going to pay for their web hosting? Tell them to scram.

  • agcat 1 day ago
    Ghost for work.. bearblog.dev for personal use
  • hosh 1 day ago
    Not immediately practical -- I've been looking into using Pharo (smalltalk) to build a web authoring / static site generator that non-devs can use, and something that devs can quickly customize or extend.
  • moomoo11 1 day ago
    You could use notion if you want forms (event sign ups or tracking stuff like inventory). There’s a way to make notion pages a “website”.

    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.

  • vanillax 1 day ago
    Payload CMS Is the best out there. Its free to host yourself.
  • tomnipotent 1 day ago
    A gmail account and a public calendar and embed widget.
  • jackh04878 7 minutes ago
    [dead]
  • Beefin 1 day ago
    i've been super happy with Ghost for our blog http://mixpeek.com/blog
  • curtisszmania 1 day ago
    [dead]