DEV Community

Cover image for Which headless CMS would you recommend for a blog site?

Which headless CMS would you recommend for a blog site?

Hung Vu on June 26, 2022

I'm thinking about building a blog page using headless CMS, that said, I'm new to headless CMS world and currently is in a researching phase. Wha...
Collapse
 
jnv profile image
Jan Vlnas • Edited

I can share a personal experience with WordPress. We used it as a headless CMS until a year ago. It's possible things have improved meanwhile, but at the time it was the worst choice for headless CMS by far.

Here's the thing: most WordPress + Next.js starters and tutorials will show you absolute basics. Get list of articles from WordPress API, set innerHTML for the post content, done. Things get tedious pretty quickly if you attempt to do anything more complex like, use WordPress blocks. Want to style blocks with custom behavior? Good luck, WP gives you a monolithic HTML with no information about the blocks, so prepare to do some extra parsing and DOM gymnastics to get done anything more complex than render a text. Even embedding a tweet is a problem, the respective block will render <script> tag for you, but that won't work with innerHTML. Also, some blocks will happily set inline styles for you.

In comparison, most headless CMS provide you with structured data which can be easily transformed and rendered the way you see fit. WordPress will just give you an HTML blob. Oh, and be also prepared to install a lot of plug-ins to make the API at least somewhat usable…

Collapse
 
hunghvu profile image
Hung Vu

Thanks for the great insight!

Collapse
 
jwp profile image
John Peters

Ok. What do you recommend?

Collapse
 
jnv profile image
Jan Vlnas • Edited

Depends on the project.

For a personal blog, no CMS, just Markdown files committed to the repository; I like to keep things simple. We currently do that on Superface Blog, but it doesn't work well for non-technical users and handling image-heavy posts is painful. So I plan to use Notion as a backend. We use it for editorial process anyway.

In case of the WordPress-based project, its successor uses Contentful. I think it's okay choice, but the developer experience could be better. The team basically turned the headless CMS into a page builder and then they cornered themselves by using Contentful's GraphQL API which isn't appropriate for this use case. So it really depends on what sort of content you need to manage.

At the time we also tested Prismic which, compared to Contentful, felt more approachable and cheaper for smaller sites.
For page builder-like experience, Storyblok seems like an interesting choice.
If I needed a lot of structured content and/or heavily customized administration, I'd consider Sanity.
And for larger projects with possible needs for deeper customization and budget for on-prem deployment I'd look into open-source/open-core systems like Strapi, Webiny, or Contember.

Thread Thread
 
annietaylorchen profile image
Annie Taylor Chen

I was going to say something but found your post said mostly what I wanted to say. I agree with your assessment based on my personal experience with MD, contentful, prismic, storyblok and strapi.

Collapse
 
paulknulst profile image
Paul Knulst

I personally use Ghost CMS!

  • developer friendly
  • could be used as headless cms with gatsby: gatsby.ghost.org
  • could be self hosted easily with docker: knulst.de/how-to-self-host-ghost-b...
  • could be cloud hosted (cheap)
  • SEO friendly
  • payment integrated with stripe (no fees)
  • mailing list (with mailgun)
  • localization (with themes)
  • many other plugins
  • many more features

Check out my personal instance: knulst.de

Collapse
 
hunghvu profile image
Hung Vu

Thanks for the demo!

Collapse
 
akashm profile image
Akash Mahajan

I have recently experimented with Strapi. While it is nice, I feel the documentation isn't the best around.

For now I have picked up Sanity.io + Astrojs.

Another great option I would like to try is Directus

Collapse
 
danwalsh profile image
Dan Walsh

I’ve had some great fun messing around with Strapi and Gatsby to produce a statically-generated headless CMS website. While I haven’t implemented all the features you’ve listed, my understanding is that this tech stack can do all of it.

The flexibility of Strapi in creating your content types is awesome. I used Wordpress and Advanced Custom Fields Pro for years, and Strapi is like a breath of fresh air! Would definitely recommend you give it a try! 😊

Collapse
 
waylonwalker profile image
Waylon Walker

I have used forestry.io in the past, its pretty simple to setup, and uses git as a backend. It felt like a good way for me to author articles when I was away from my main machine, but I ended up not using it as much in favor of writing in my comfy editor.

Collapse
 
endymion1818 profile image
Ben Read

If you're going to go the WordPress route make sure you factor in time for site maintenance, and host it on something like WP Engine, where backups are taken care of and they specialize in security for WordPress. I've spent too much time cleaning up hacked WordPress sites to want to ever go through that again.

Also, do try out Webiny, it's got a great range of features, meaning it's built for enterprise use but it's also suitable for small blogs. It's also basically free to host because it's serverless, so it'll sleep when it's not being used.

Check it out! webiny.com

Collapse
 
hunghvu profile image
Hung Vu

Thanks, that seems to be an interesting solution!

Collapse
 
sunesookhan profile image
Sune Quist

I used Strapi. mostly because of the easy and quick way to set it up, and the nice UI.

Though I would highly recommend prismic, not from my own experience though. But from a lot of my colleagues or friends, who have been working with it over the years.

I could go into why a little bit more, but I do not think I have enough experience with prismic to compare the two, but it is simply a recommendation from other people through me.

Collapse
 
tqbit profile image
tq-bit

I'm using Ghost for my blog and can recommend it because

  • It's developer AND content creator friendly
  • It's headless if you need it to be with a good api documentation (and code samples)
  • It has reasonable pricing and can also be selfhosted
  • It can be extended with webhooks (functionality for this is also well documented)
Collapse
 
arcktosh profile image
Ben Henning

From my experience, I always choose Strapi, we built a Social LMS platform for universities and schools, with constant changes as a requirement Strapi enabled us to make large architectural changes in short timespans without causing damage to existing development.

Collapse
 
christopherkapic profile image
CK

I love Directus. You can run it in Google Cloud Run for very cheap, and I have yet to come across a feature that another headless CMS has that Directus does not have.
I would stay away from Strapi. It seems flashy, but I have been annoyed when actually trying to run it in production.

Collapse
 
chriis profile image
Chris Gregori

I just finished building my new personal site using Sanity and Next.JS - chriis.dev - I'm writing a post too on how some of the fun bits work if that's of use to you!

Collapse
 
hunghvu profile image
Hung Vu

Hi Chris, the site looks great to me. I'm looking forward to read more about your experience with Sanity!

Collapse
 
chriis profile image
Chris Gregori

Excited to delve deeper! I might write a blog post about the details of Sanity but here's the introduction post to the site in general if you're interested!

Thread Thread
 
hunghvu profile image
Hung Vu

Gorgeous! Love the minimalism style and subtle animation. Thank you for sharing. ❤️

Collapse
 
ivan_jrmc profile image
Ivan Jeremic

WordPress it is the cheapest and works.

Collapse
 
hunghvu profile image
Hung Vu

Probably not the cheapest as other solutions also have free tiers or self-hosted option. When coming to ease of use, a standard WordPress is arguably the best. However, I will use it in a headless way, so that is not an advantage anymore.

Collapse
 
ivan_jrmc profile image
Ivan Jeremic • Edited

WordPress has free forever tier too maybe you did't know, just look at the website it is a bit hidden, I have dozens of sites running on wordpress free tier, also the wordpress.com free tier allows you to use it as a headless cms too just like the self hosted version it has the same rest api no difference.

Collapse
 
saosangmo profile image
saosangmo

I suggest Ghost CMS, it meets your need. Easy to use. Headless and no headache.

Collapse
 
brense profile image
Rense Bakker
Collapse
 
msamgan profile image
Mohammed Samgan Khan

use laravel wink from msaid, its awesome....

github.com/themsaid/wink

Collapse
 
andrewbaisden profile image
Andrew Baisden

I would choose Sanity, Strapi or Ghost.

Collapse
 
webhandwerk profile image
WebHandwerk

Storyblok. It has a visual Editor :-)

Collapse
 
jonrandy profile image
Jon Randy 🎖️

A blog would be a near perfect example of something that doesn't require a headless CMS

Collapse
 
hunghvu profile image
Hung Vu

Would you mind elaborating other non CMS options? I would like to heavily customize the website so a traditional website builder is not an option for me (at least that is what I'm thinking now).

Collapse
 
katafrakt profile image
Paweł Świątkowski

this

Collapse
 
mjcoder profile image
Mohammad Javed

I would go for WordPress just because I use it quite frequently. I'm yet to build a headless website using WP, I'm soon going to take a look at it.

Collapse
 
nkhandhar profile image
Nilay khandhar

Recently we built sizable travel blogging site using strapi on self managed aws kubernates .

Performance is awesome and customer is happy 😊