With the release of Kentico Cloud, I felt like it was time for me to have a look around and see what I could achieve with Kentico's new headless CMS. My MVC is a little rusty too; this should be an entertaining challenge.
What is headless CMS?
The concept of the headless CMS is fairly simple and well described by Samantha Whitford at IBM :
A headless CMS provides a way for companies to separate content storage from content delivery. It acts as a central content repository that can store all content types, including videos, images, documents and even specific text copy. Then, using APIs, content can be pushed out to multiple channels and devices and integrated with marketing automation or commerce software to include in campaigns or eCommerce sites. The headless CMS can also be referred to as a "Content as a Service" offering; the two names are interchangeable.
Personally, I feel that some of the claims made about the benefits that are suggested of a headless CMS are questionable. Specifically what I take issue with is that idea that you can change your delivery mechanisms without changing your CMS itself. Whilst technically true, more often than not you will be reassessing the IA when refreshing a site, so the structures and the content need to change. I suppose that if you're simply desperate to move from .Net to PHP or vice versa, then this is a real help - but I think that really is a fringe case. You can certainly add more delivery mechanism, but if you're refreshing your site then you probably have a little more to do.
What does Kentico Cloud offer?
Kentico cloud really consists of a trio of services:
- Kentico Draft: This is Kentico's own content collation tool (think Gather Content) that they developed and released in 2015. This is (in their words) aimed at easily managing content production.
- Kentico Deliver: A REST API to deliver the content produced in Draft in to any channel.
- Kentico Engage: Individual user tracking and personalisation. I've had the pleasure of being involved in the work done on Draft last year, so I'm reasonably familiar with it as a tool. Deliver is new to me, so there will be some learning there.
These services are on a pay-as-you-go basis and there is a free tier that let's you have 500 content items and 100K API requests across 10 projects. That sounds like a good place to start
The challenge I've set for myself is to build up a blog (this site) in Kentico Cloud. This isn't really work sponsored just now, so I'm going to be looking at half hour slots here and there to get stuff done. My prediction is that I will be very quick to get something simple working, and then will get a bit more complex as I go along.
For this project I'll be using Draft and Deliver. I'll be using ASP.Net MVC in combination with Azure App Services and hopefully Azure Search and Cloudflare for search and CDN capabilities.
Lets see how we get on...