Contact Us

How a headless CMS like Sitecore gives you the flexibility to deliver experiences anywhere


Traditional CMS has been around since the early days of web development. The approach focuses on managing content by putting everything in one big bucket — content, images, HTML, CSS.

This was what made it impossible to reuse the content because it got convoluted with the code. But as digital platforms evolved, the need for more flexible solutions emerged. Currently, enterprises are in the process of developing websites, apps, digital displays, and much more. Meanwhile, the traditional CMS has failed to keep pace.

As a CMS organises content in webpage-oriented frameworks, it is impossible for the same content to be adapted to other digital platforms. That’s how a Headless and Decoupled CMS came to existence.

What is headless CMS?


A headless CMS is any type of content management system, wherein the content is separated or decoupled from the presentation layer head. General thought is that the Headless CMS comprises three parts: a backend, APIs, and an interface or Presentation Layer.

The backend stores content; APIs connect the database to presentation layers. These presentation layers are independent from the CMS and thus malleable. But a headless CMS doesn’t have a front end or presentation layer. There is simply no built-in option at all.

Typically, when using a headless CMS, developers can handle the presentation layer in a few different ways. From interactive JS frameworks like React, developers can choose what suits the web project best. This allows developers to quickly design front-end experiences and code using whatever language they prefer. They’re not restricted to backend technologies and can rely on APIs to connect the backend functions to any front end delivery environment.

What are the advantages of Headless CMS


A good way to look at headless CMS is that it separates authoring from publishing. Authoring at the backend is completely separate from publishing at the front-end.

1. Headless CMS lets you push content through versatile channels. As devices and channels are multiplying and becoming more distinct, a headless solution offers the flexibility websites need. Content is created once and pushed through multiple channels. It allows you to have full control and flexibility over coding with headless

2. Developer teams usually prefer a headless CMS over a traditional one, as it gives them a level of flexibility and freedom. These teams can use programming languages they are most familiar with, increasing efficient coding and minimizing bugs.

3. Developers can make changes to the front end without impacting the backend (and vice-versa). Even though you’re dealing with multiple systems, you can still have an advanced permissions mechanism in place, with levels allowing user and administrator levels to view, create, edit and publish. With the frontend and backend completely in the cloud, it’s easy to scale as your business grows

4. Headless CMS lets you create the best possible experience for your customers. A headless CMS delivers the content you need where you need it, through an API. Based on the users’ input, make sure the content delivered is always relevant to your customers.

Sitecore, CMS and multichannel Sitecore XP, and JSS will take care of the generation of all the necessary artifacts.

Deployment Cross Platform
Support for physically decoupled "headless" deployments. Deploy your app "headlessly" to any platform that runs server-side JavaScript.

Ease of Deployment
Your web app is a nimble self-contained JS bundle, easier to deploy and manage.

Scalability
Use CDN’s, proxies and Node.js server to scale your applications.


Services and APIs



GraphQL
Use GraphQL to add a query in Sitecore and retrieve the data you need in the most efficient way.

Server-side Rendering
JSS supports headless server-side rendering using any service that supports hosting Node.js applications.

Translations
Sitecore JSS has been built to allow you to take advantage of one of Sitecore's strongest WCM features - content language versioning.


Content management



Content Creation and Advanced Editor
Use the Sitecore Experience Editor, a WYSIWYG editor that allows you to easily make changes to items directly on the page. You can edit all the items that are visible on the page — text, graphics, logos, links, and so on.

Workflow and Governance
To ensure that only items that have been approved are published, you can use workflows to formalize and enforce your company processes and procedures.

Preview
The preview functionality lets you preview all your items on your website without publishing them first. Preview based on different dates, time, languages and on multiple devices.


Experience management



Analytics
Experience Analytics contains tools that let's you view detailed reports about your website's visitors in real time.

Personalization
Use rules to deliver targeted, relevant content to your contacts based on their characteristics and behavior, such as location, gender, or previous visits. Ensure that the right content reaches the right contacts at the right time.

Optimization
Use Experience Optimization to test content and presentation components within your website or app to ensure you use the most effective combinations.

Using GraphQL with JSS


What is GraphQL?
GraphQL is a query language for your API. Think of it in SQL terms as "the world's best SELECT statement." When you use GraphQL, only the exact data that the front-end needs, is returned by the server. This provides the capability to have bandwidth savings vs REST of the API, while also exposing a great amount of flexibility because not every element of the API needs be calculated for every request. Because GraphQL is a protocol, it also enables additional optimizations like query batching that are impossible with a REST API.

The Sitecore GraphQL API is an implementation of a GraphQL server on top of Sitecore. It is designed to be a generic GraphQL service platform, not simply a content API, and can serve or aggregate any data that you can access from the Sitecore server and present it via GraphQL queries. The API also supports real-time data using GraphQL subscriptions.
Need Help?
Using GraphQL with JSS apps
JSS apps have several choices in terms of using GraphQL. With integrated GraphQL, the format of the route data returned for a specific component by the Sitecore Layout Service can be modified into the result of a GraphQL query. With connected GraphQL, a JSS app makes direct HTTP requests to a Sitecore GraphQL endpoint.