66 comments

  • geocrasher 11 hours 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 9 hours 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.

    • type0 7 hours ago

      Why not Ghost instead?

      • michaelsalim 7 hours ago

        Most people don't know Ghost. Almost everyone knows wordpress

    • dizlexic 9 hours 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.

      • dabockster 7 hours 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.

  • pembrook 14 hours 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.

    • skeptrune 11 hours 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 8 hours 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 3 hours 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 an hour 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 27 minutes 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.

    • citizenpaul 14 hours 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 11 hours 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 13 hours 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 9 hours 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 14 hours 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 13 hours 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).

  • edu 13 hours 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 12 hours 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

  • moomoo11 8 minutes 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.

  • codegeek 13 hours 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 11 hours 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.

  • Y-bar 11 hours 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 11 hours 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.

  • 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 4 hours 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?

  • whilenot-dev 12 hours 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 13 hours 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

  • rla3rd 12 hours ago

    Wagtail CMS, built on top of django. https://wagtail.org/

    • type0 7 hours 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

  • h4ch1 12 hours 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 12 hours ago
      • h4ch1 9 hours 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 11 hours 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 9 hours 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 9 hours 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 an hour 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

  • ChrisMarshallNY 12 hours 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.

  • yodon 13 hours 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.

  • difu_disciple 12 hours 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

  • Nextgrid 7 hours 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.

  • mrweasel 14 hours ago

    Wordpress? Why does it need to be headless though?

    • racl101 13 hours 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 11 hours 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

  • miragecraft 7 hours 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.

  • shortformblog 12 hours 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.

  • mitjam 9 hours 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).

  • sidcool 4 hours ago

    Contentstack is pretty good in this regard. Headless, provides Personalization, Hosting, Analytics, Marketplace etc.

  • agcat 2 hours ago

    Ghost for work.. bearblog.dev for personal use

  • stophecom 11 hours 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 :)

  • __oh_es 13 hours 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.

  • akmann 14 hours 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

  • type0 7 hours ago

    Maybe https://getpublii.com/ it's a static site generator as an app for non technical people

  • forest_pink a day 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 13 hours 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.

  • rkunal 8 hours ago

    I am travelling right now. I wonder if I had used Wordpress for my blog because it has a fully functional mobile app.

  • Lucasoato 14 hours 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 14 hours 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.

  • beingmudit 11 hours ago
  • carlosjobim 12 hours ago

    > They don't have funding.

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

  • hosh 13 hours 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.

  • vanillax 12 hours ago

    Payload CMS Is the best out there. Its free to host yourself.

  • tomnipotent 11 hours ago

    A gmail account and a public calendar and embed widget.

  • Beefin 13 hours ago

    i've been super happy with Ghost for our blog http://mixpeek.com/blog