Understanding XM Cloud for Experienced Sitecore Developers

July 18, 2022 | Sitecore, XM Cloud

XM Cloud is finally here. I bet you are wondering what it is and how it compares to the previous Sitecore CMS products (XM/XP PaaS or on-premises) you've been working with for years. Let's unpack what XM Cloud is so an experienced Sitecore developer can understand how their development methodology may change.

XM Cloud is based on XM

As the name suggests, XM Cloud is based on the traditional XM product you may know. XM is a simpler version of XP with a focus on content management and limited personalization features. While XP represents the full platform that includes content management, personalization, content testing, etc, XM focuses on content management and page layouts for the most part.

XM Cloud is the new breed of CMS from Sitecore based on XM, not XP. "Why not base it on XP?" you may ask. Sitecore has been on a journey to a Composable DXP for a few years now. The philosophy of the composable model is that each capability area is decoupled from others and independent. While XP represented a larger feature-baked platform, XM is the content management capability only. So it’s a natural choice for the new content capability of the Composable DXP to start here.

XM Cloud is headless

The largest impact for developers with XM Cloud is the adoption of a purely headless CMS. That mean no more Sitecore MVC (technically you can build a .NET MVC site with it, but it needs to use headless APIs, not Sitecore DLLs for context). The headless model decouples the CMS application from the experience you intend to build with it, whether it’s a content marketing website, a web portal, mobile app, etc.

This means:

  • No more Sitecore MVC
  • Developing a website will require you to implement headless services (JavaScript SDK or .NET Core SDK) or via direct API calls to Layout Service, Experience Edge etc.
  • Sitecore will no longer host your website, just your CMS
  • No more Content Search API and directly using the Solr index

XM Cloud is SaaS

Sitecore's CMS is now SaaS! Because your website implementation is now headless and not hosted on the same application as the CMS (it's not possible), Sitecore has made XM Cloud a SaaS product. You are responsible for your own web server to host your website -- in Sitecore terms its called a Rendering Host. Sitecore is responsible for spinning up a "limited" CM instance in their SaaS infrastructure.

How do you make that happen...?

XM Cloud provides new developer tooling

Sitecore now provides a cloud portal and a CLI to provision and manage XM Cloud instances

Additionally, since we're now in the world of SaaS, many other things need to be provided as services that Sitecore now owns:

  • Identity management via Sitecore Unified Identity
  • Deployment tooling for the CMS instance

Wait, what? Deployment tooling for the CMS instance? I thought this was headless?

Yes….

XM Cloud allows CMS customizations too

While I did mention above that XM Cloud forces your end experience to be headless, Sitecore still allows you to deploy code such as a traditional .NET project to the XM Cloud CM instance they are hosting as SaaS.

This means you can (still) do the following:

  • Serialize developer content items via source control and deploy to CM
  • Deploy and execute content migration scripts
  • Deploy and respond to pipelines and events in the CMS
  • Customize the CMS with custom editors, command/buttons, etc.

XM Cloud offers a new authoring experience with Sitecore Pages

As a great new addition to the product, XM Cloud will also offer a new authoring experience in the form of a separate SaaS application called Sitecore Pages. This will allow a new experience with authoring content separate from the Content Editor or Experience Editor directly on the XM Cloud CM instance.

Sitecore Pages is hosted by Sitecore as SaaS and communicates to the XM Cloud CM instance headlessly. More to come on this topic when we learn more!