Have you lost your 'Head' yet? Build how you want with Headless CMS
Sep 25, 2017
By: Jason Tesser
Businesses with complex web environments are rethinking their approach to content management to better support their operations. Many businesses are managing thousands or even millions of pieces of individual content, across thousands of pages and hundreds or thousands of editors. Developers often want to use tool sets outside of the CMS to create the best user experiences with approaches like single page apps. Content also has to be delivered over multiple channels. Consider the rise of mobile and tablets in the last decade alone. And new formats are always emerging, such as wearables and voice-controlled assistants (think Alexa, Google Home), where vast stores of existing content has to be displayed in new ways.
The Case for Headless CMS
Headless CMS can help businesses solve the dilemma of massively complex content environments and successful technical delivery, creating better customer experiences, support of new channels and freeing up both content editors and web developers to deliver the best experience. Also known as Content as a Service (CaaS), headless CMS does this by completely separating the storage of content from the actual presentation of content. At a high level, raw content is stored, managed, edited, indexed and delivered without any design or presentation elements included. When a user requests specific content, the platform or site dynamically applies design and presentation instruction to the raw content to deliver a fully featured content page with the right design, branding, functionality and responsiveness.
Headless CMS enables updated, accurate and controlled content to be delivered to thousands of sites and channels. Page redesigns don’t mean updating content. Front-end developers can work with the latest tools that fit modern experiences. Architecture is simpler to manage and is scalable to adapt to the newest device, development tool or innovation.
Use Case: Building a Single Page App Using a Headless CMS and REST APIs
While there are many website builders out there, businesses often get shoehorned into a solution (based on a past tool selection and implementation) and often don’t have the people on staff with the expertise to maintain the solution over time. In addition, many HTML experts do not want to work within the constraints of an off-the-shelf website builder. The HTML experts want to build their HTML separate from the content, and they also do not want to copy and paste every change submitted from the content authors. In massively complex content environments (e.g., thousands of pages, thousands of authors), it’s not only undesirable for the HTML skilled people to manage content changes and updates, it’s impossible.
To solve this, dotCMS provides an easy place to store and index all of a business’s content while providing capabilities to access this content in raw formats or even render it by pulling it into an external application. You can have dotCMS integrate with content living in other pieces of software so that a static web solution or custom web solution can pull all of the content in a permissioned, secure and easy fashion.
This is called headless. Running dotCMS headless means dotCMS is not serving the actual webpages people are seeing in their web browser, but it organizes, stores, permissions and indexes some or all of the content being displayed.
This can be as much or little as your organization requires. Using dotCMS’s REST APIs, you can pull raw content meaning just the fields that make up a piece of content (absent of design/presentation information). For example, a news article might have the raw data fields of a title, headline, Youtube video, body and images. In the raw scenario, you get JSON back for each field within the news article. You can also have dotCMS REST APIs render this same piece of content. For the rendered scenario, you can have a template or even scripting code parse, layout and manipulate the news article. The amazing thing is the rendering code is easy to maintain within the powerful backend of dotCMS itself.
dotCMS has templates, widgets, containers, files, pages and such, all of which can be used not only as a web building engine but in the headless case, be served to a custom or in house web solution through frameworks like Angular or React. This is where the power of running headless comes into play.
So if you want a single page app (SPA) that can pull all your business content without needing your content authors to know about web development and you want to allow your HTML and web team to do their job, a headless solution like dotCMS can be ideal.
The Capabilities of a High Performing Headless Content Environment
Smart organizations need to adopt the right capabilities to drive success in a headless content management environment. Key features a solution should provide to support a CaaS deployment should include:
Storage features: A structured system that can support a wide range of content storage and server features, such as scripting, indexing, permissions, search, and caching. A performance capability to retrieve thousands to millions of pieces of content quickly.
APIs: The ability to interact with the content store through an API to import, manage and deliver content. API support to deliver content to any channel or device, and API support to manage and create content on the server side.
Workflows: A flexible and customizable workflow for content creation, management and delivery processes. The ability to create and store content with third-party tools and automated processes to publish content, notify stakeholders and push content to other systems.
Flexible deployment: The capability to deploy on cloud, on-premises, or with a hybrid cloud deployment. A flexible implementation strategy for where the business want servers and how it wants to manage them.
Security: A well-defined system of permissions that are enforced by APIs, multiple authentication capabilities, and the ability to configure roles to manage content.
For enterprises with large, complex web environments, there is real opportunity to use a headless CMS strategy to improve customer experience, developer innovation and operational simplicity. As it represents a big change in the creation, management, and delivery of content across an organization, the right approach, solution and partner make a big difference in building success.