Decoupled Content Management Systems (CMS), or "headless CMS" is a new development approach focused on building the back-end management system decoupled from the front-end layer. This allows site administrators to manage multiple digital products (website, application, IOT) from one admin, and allows developers to build beautiful state-less interfaces without dealing with the functional restrictions of a traditional CMS. This approach also allows product owners to constantly improve the user experience and design of their applications without having to re-architect their back-end services.
Many popular CMSs, Drupal and Wordpress included, are expanding their API capabilities to allow developers to decouple them to give site owners more flexibility. Drupal is a particularly robust solution if you're looking for a content management system that offers more fluidity for building out your back-end services. Here's what you need to know about decoupled CMS and why companies are looking to go headless in their web infrastructure.
What is decoupled/headless CMS?
Decoupled CMS is a content management system that removes the front-end component (the head) but leaves the backend intact for content administration. Headless CMS has no bearing on how (or where) the content is actually displayed. The sole focus of such a system is on the storage and delivery of content.
Traditionally, content management is done with a standard multi-purpose CMS (also called monolithic or coupled), which is what WordPress and Drupal are prior to having the "heads" removed. A monolithic CMS have several components:
- Database for content storage
- Admin interface (web app for editors to work with content)
- Web app for site design management
- Front-end that generates HTML pages after pulling content from the database
The CMS' "head" is comprised of the third and fourth components, which would be the website itself. With only the first two components remaining, that just leaves the back end to handle storage, distribution, and editing.
Why is "going headless" becoming so popular?
Monolithic CMSs are popular with site owners who have little or no web development experience because of the many "plug'n'play" themes available. This setup provides owners with a dashboard to manage content and often the site them all from the same place. Headless CMSs are not focused on the front-end theme and only focus on the organization and delivery of the site content. A developer still needs to build the front-end interface separately and use the headless CMS' API to access the content.
Another advantage to building a decoupled project is that the front-end and back-end teams can work almost entirely independent, giving the company more flexibility and scalability with their resources. It also removes a lot of restrictions of the front-end that are in place with monolithic CMSs and allows developers to use the latest and greatest that the web has to offer.
An important thing to note is that a company's website is not the only place where content can be delivered. Most companies will have multiple channels of digital content, and often must manage this content in disconnected systems. A monolithic CMS may be fine for a blogger who manages one website, but is not the ideal solution for larger organizations with multifaceted content delivery needs. Many larger organizations have multiple websites, applications, single-page applications, and IOT apps which could all be managed with one decoupled system. Headless CMSs gives editors and marketers one single place to control all of their digital content.
Why is Drupal the best headless solution?
Drupal is currently beating the competition as being the best headless CMS solution on the market, on account of the capabilities that both content editors and web developers find incredibly favorable for building a large and intricate content delivery ecosystem. It is a powerful and configurable CMS that you can easily mold to fit your specific project needs: a major advantage Drupal has is that it supports both the headless and monolithic approaches. It is totally possible to have an architecture where Drupal is simultaneously coupled and decoupled. While you may be familiar with the advanced CMS capabilities of Drupal, many people are not aware of its chief advantages over other headless CMSs:
Drupal Isn't API-Only
With mobile apps becoming a popular method of content delivery, marketing departments need to be in sync with developers more than ever to ensure that customers are getting content delivered this way the way it was intended to be delivered. A problem is that most headless CMSes limit developers to an API-only approach. You can use Drupal to run your website and as an API for mobile apps, or go fully decoupled and have both your website and mobile app use the API. It is easy to mold Drupal into an API-first CMS opposed to API-only. The possibilities are practically endless as to what kind of experience both the marketing team and developers are capable of creating, using your customers' preferred modes of content delivery as a guide.
Content Previews Are Seamless
One of the marketing team's foremost concerns is how content is going to look on the website, app, wearables, IOT, and any other places where it gets delivered. Subsequently, editors need to see how it will look prior to publishing and make adjustments as necessary. An end-to-end preview system is critical to the content editor's workflow and a majority of headless CMS solutions force the developers to do a significant amount of work to enable seamless previews: developers have to go out of their way to set up a new API endpoint or staging environment, where a separate version of the app will issue requests against new paths. This creates so much extra work for both the developer and editor. Drupal quickly solves this problem with seamless preview systems where the editor doesn't need to involve the developer in order to see what content will look like once it's published.
Leverage Views to quickly create advanced APIs
Another powerful advantage Drupal has for creating robust decoupled APIs is the ability for the Views module to create API endpoints. Drupal developers can build a back-end View the same they would with a traditional Monolithic Drupal website, but then can expose that view as a REST endpoint for front-end applications to consume. This means that you can build your API faster, with more complex relationships, while always having full control over its output. The Views module helps developers build complex Drupal websites fast, and will do the same for your new decoupled API service.
Drupal Services has self-documenting capabilities. This means that the API definitions of the back-end service will automatically update when then back-end code is changed. This is a ground-breaking feature that will save time and headache for both back-end and front-end development teams. No more tedious content entry, no more 3rd party services, Drupal comes with the tools your team needs to build complex APIs quickly and efficiently.
No matter how you cut it, Drupal gives content editors a best-in-class experience where they have more control over content presentation, all while your web developers have all of the tools they need to build the best applications possible without the architecture and API limitations that they would normally face. Drupal offers a powerhouse of content management and delivery solutions that are made all the more powerful by going headless yet offering developers the option to take headless and traditional approaches.