Hello, I am gonna go on a bit of rant here, but there does not seem to be too much good options for Headless CMS for the developer/blogger which has a free tier. I am currently using Contentful, which has a nice user interface, a generous free tier and a nice way to create Content models for different use cases. It is used by big companies and has a huge team behind it. However, it is not without its flaws (IMHO)
I am using Contentful with Gatsby and here is some of the things I find annoying from my experience...
I need to rebuild the site every single time I publish a new article. So if there is a small spelling mistake, then another rebuild. That eats up a ton of build minutes on Netlify.
The rich text content editor is
buggy
and the preview layout is totally different than what is on the site. I have to constantly make sure that the spacing is recognized inside of the editor, and often that involves adding extra line breaks. This makes it is more spaced out on the editor than what renders on the site.Uploading images is super tedious, cumbersome and slow. Why is there no easy drag and drop.
Limited options in the Rich Text Content Editor. The rich text editor is only slightly better than the almost useless MarkDown editor. For example they do not have the options to
a) Make subscripts or superscripts
b) Make centering of text easy. Actually it is very sad that this very simplistic use case is not even possible in the editor. You do not have the option to have some text centered and some text left centered within the same rich text field :(
It would be nice if they had some extra code embed options as well. For example in the long form rich text editor you might be writing an article where you embed some CSS, HTML and JS code. Contentful does not allow you to do that in a flexible way. Though there is probably no CMS out that will have that feature, where you can drop code in, select a language and have it perfectly displayed like if you were using https://prismjs.com/
If you are writing all your articles in a very structured manner and they all look the same and things occur in the same order than Contentful works okay. Otherwise, it is problematic. Further, it requires a lot of hands on developer work to customize.
These major flaws outlined make Contentful a writing averse platform due to the extra time needed to write and publish an article.
The user experience for writing on the Medium Platform is absolutely amazing. Unfortunately, I have not seen any available CMS that even comes close. Hate or love WordPress (I personally am on the hate side), WP makes it easy to write articles and customize the content for anyone, even if it's a developers nightmare.
Why is there no headless CMS that can combine some of the powerful Content modeling features Contentful provides with the amazing writing UX on the Medium Platform? Whichever CMS does this first, and provides a free tier to the personal bloggers will definitely topple all other current CMS platforms.
Thoughts?
Top comments (22)
We've recently launched Flotiq and its free tier should be just enough for a typical blogger.
We're building the Flotiq blog using Flotiq, so we surely share any pains any other user will have ;-). And a more immersive text editing feature is high on our priority list :-)
Here's a teaser video to get you started:
Take a look and let me know how we can make it better for you. Drop us an email at hello at flotiq.com
That is awesome great to hear and thank you for sharing. Just wondering why are you using Heroku with Gatsby when that is a bit of overkill for a static site generator?
I also tend to stay away from Heroku because scaling a web app on it can get extremely pricey and the fact that your app is asleep on free tier.
Heroku is just an example of how you can host a site generated with Gatsby. For our blog we're actually using Cloudflare workers, it costs $5 a month but gives us a lot more than just hosting.
"I need to rebuild the site every single time I publish a new article. So if there is a small spelling mistake, then another rebuild. That eats up a ton of build minutes on Netlify."
To solve the issue, You can use dynamic sites like pages that are created via React Router with respect to URL.
Gatsby creates static pages default. You can do something. gatsbyjs.org/tutorial/part-seven/
For example, this is dynamic content blog, created with React and Prismic io.( Contentful or another CMS can be used ) user-guides.prismic.io/en/articles...
The issue with that I believe is that now you lose all the benefits like SEO and speed from static site generation. For example, The content text is no longer rendered when I inspect view page source.
view-source:react-blog-demo.netlify.com/blog/p...
We use Prismic at work. It's built to be very flexible which is nice. Most of the problems I've had with headless have to do with the "head." Like it sounds like the Gatsby build thing is a limitation for you. I have a couple of Gatsby site and I wish the build time was faster. Also making the preview in a headless CMS look like the "head" requires a lot of work in my general experience.
I wonder if Gatsby could be configured to read a feed of posts so you wouldn't need to rebuild? I'm experimenting with this a bit myself. I have a prototype that grabs an RSS file on load and uses that as the posts.
I'm currently using Kontent as my preferred CMS. I think it checks a lot of your boxes:
The rebuilding process is almost inevitable when publishing to a static/CDN environment, and is also one of the unique selling points for JAMstack sites. Since the site is already being prebuilt, your website will become a lot faster.
Hi Martin, Kontent looks pretty good from the surface reading the specs and the pricing tiers. I will have to try it out and look into it a bit more. Thank you for the suggestion.
Are you able to custom style the fields in the editor. For example, if I wanted all the H1 tags to look a certain way with a specific hover effect. Did with Bold, Italic, Underline,etc. Actually I do not see underline in the screenshot given, hopefully that is there though. I am also guessing it does not have a live preview option?
I am going to give Butter CMS a go, it has a very good rating and might post my findings later on.
I understand that is a huge selling point for JAMStack, but it would be nice if at least a live preview was available on how the article looks when you are creating it. This would speed up publishing time dramatically and reduce unnecessarily rebuilds. A marketer/ blogger on the company site can easily customize and preview the article they are writing without having to publish, wait for the site to rebuild etc. It is almost a disaster doing it this way
There are some interesting things happening with live previews at StackBit, however, they are still in beta. Not ready yet for use in production environments in my opinion. But it could be a killer functionality!
You can check Best Headless Platforms for Blogging article that reviews an in-depth analysis of headless blogging platforms.
Recently switched from Contentful to Butter and wow, what a difference! Everything that was a pain is now smooth sailing. Can't believe I did not switch sooner! Unfortunately still have some sites on Contentful but migrating my blog over to Butter CMS. Thanks for the suggestions everyone!
Are you still using Butter? Any issues with it?
Hmm there is a lot of business incentive. I am not saying it should be 100% free, there is different tiers. A free tier and a paid tier when your blog say hits 10,000 views a month or after you have created 5000+ articles.
Pretty much any tech business does this. I don't think the existing CMS platforms out there are trying to create crappy CMS platforms because people are not willing to pay for great features. I am quite certain large companies would pay large sums of money for a CMS that was great for both the developer and writer and had the features outlined above.
ghost.org/ has an awesome writing interface, and is free to host yourself. strapi.io/ is super customizable and easy to deploy. But if your using netlify to build have you thought of using netlifycms.org/ ?
Hi Nicholas, thanks for your suggestion. I have tried both. Netlify CMS is pretty limited from what I seen.
I didn't see anyone mention Sanity.io yet, so thought I'd add that in as a suggestion. What I like about Sanity is that you can create whatever schema you want, which you host yourself or just run locally, but the data is in a lake on Sanity's servers.
Could be overkill for a simpler blog, but I use it for guides and a magazine section. I love it, so well worth a mention.
Naive question, but what's wrong with just GitHub + Visual Studio Code with live preview of your markdown files?
The biggest issue with that is content management. This might be okay if you are just one person on a personal blog, but if you are working with marketing people or content writer you probably do not want them in messing with the code inside VS Code Editor.
The other reason is you want to make things consistent as possible, but still have that flexibility to make certain customizations. With a content management system, you can ensure that each article has a title, author, image, subtitle, etc and looks a "certain way"
A good content management system and editor, should make the writing process streamlined (ie. easily check for spelling mistakes and format your articles easily and nicely, detached from the code) and create some architecture and consistency with your content.
Hope that makes sense. That is my interpretation at least.
Yup that makes sense, thanks!