Feb 7, 2024
3
min read
Nathan Saldanha
,
Sales Director
Our Learnings from Building on Sitecore XM Cloud and Sitecore Search: the First Project in ANZ
As organisations prioritise flexibility, scalability, and omnichannel capabilities, Sitecore XM Cloud is quickly becoming a top choice for digital experience management. This platform, designed for a headless and cloud-native architecture, offers businesses the agility to adapt to modern customer demands. Our team’s project on Sitecore XM Cloud marked the first in the ANZ region, requiring us to integrate advanced search, innovative front-end solutions, and streamlined deployment processes.
In Part 1, we discussed our experiences with Sitecore XM Cloud’s media library limitations, publishing shifts, and Sitecore Search. In this second part, we dive into the more technical aspects of the project, highlighting our experiences with front-end development in Next.js, setting up Docker for local development, and overcoming challenges in Sitecore Search. Additionally, we benefited greatly from Sitecore’s Partner Technical Advisory (PTA) team, who supported us through complex issues, providing valuable guidance that helped us achieve a successful outcome.
This article provides an in-depth look at how we navigated technical obstacles, from handling Docker configurations to managing search performance, and how Sitecore’s PTA team became an invaluable resource. By sharing these experiences, we aim to offer other developers actionable insights into overcoming common pain points and maximising Sitecore XM Cloud’s potential for seamless digital experiences.
1. Deployment and Update Notifications
One of our biggest frustrations was the lack of notifications when Sitecore deployed updates to XM Cloud:
Unexpected Issues: With no pre-deployment notifications or separate testing environments, sudden updates often caused disruptions, occasionally taking sites down. Despite multiple requests to Sitecore for update notifications, we continued to experience these unexpected changes.
Request for Testing Environments: A dedicated environment for testing new deployments would enable teams to preemptively address potential issues, maintaining site stability post-deployment.
2. Frontend and Local Setup for Headless Development
Our experience with Next.js and XM Cloud's headless environment presented some unique challenges and opportunities:
Next.js Integration: The Next.js SDK occasionally needed patches, and we had to continuously update our source code to keep up with the latest features from XM Cloud. While Vercel ran smoothly, minor adjustments were required for Netlify compatibility.
Local Development: Local development using Docker containers demanded significant disk space, and we ran into stability issues. To address this, we adjusted configurations to use a static subnet, which improved container stability.
Quick Frontend Setup: Despite Docker’s challenges, setting up the frontend was fast—approximately 10 minutes versus traditional Sitecore’s 3-hour setup, making it a significant win for our development timelines.
Sitecore redirects issue: Sitecore redirects is not available in Netlify and is only available via Vercel. We have had to do this as a custom manual piece via an external source.
3. XM Cloud Publishing and Reliability
XM Cloud’s publishing had room for improvement:
Slow Publishing: Publishing times were sometimes slow, impacting development and content update workflows.
Service Stability: The service occasionally experienced random unavailability, disrupting our team’s work and forcing us to pause until it was restored.
4. Limitations of the Pages Editor
While the Pages editor in XM Cloud offered flexibility, it had some limitations:
Editing Complex Components: Certain fields couldn’t be edited directly in the Pages editor, requiring us to switch between Content Editor and Pages to manage more complex components.
CORS Issues with Fonts: We encountered issues with loading Font Awesome icons, as CORS (Cross-Origin Resource Sharing) prevented the fonts from appearing in the Pages editor. This required workarounds to ensure consistent styling.
5. Support from Sitecore’s Partner Technical Advisory (PTA)
Throughout the project, Sitecore’s Partner Technical Advisory (PTA) team provided valuable support:
Responsive Bug Fixes: The Search team responded to our feedback, particularly for geo-location-based search improvements. They regularly fixed issues that we encountered, helping us improve our implementation.
Guidance on Search and Geo-Location Features: PTA helped troubleshoot slower crawl speeds and suggested solutions, like increasing the number of worker processes and separating crawls for each site.
Conclusion: Key Takeaways for Future XM Cloud Projects
Our experience as the first ANZ team to build on Sitecore XM Cloud and Sitecore Search highlighted the platform’s advantages in scalability and speed but also revealed areas that require careful consideration and workarounds. Some of our main recommendations for those building on XM Cloud include:
Plan for Media Hosting Limits: For large files, set up an external hosting solution from the beginning.
Prepare for Limited Documentation: Sitecore Search documentation and logging capabilities may need additional support from Sitecore’s technical advisory.
Consider having Sitecore Premium Support: If using Sitecore on SaaS, anticipate needing 24/7 Premium Support from Sitecore.
Test for Compatibility and Stability: Be proactive with testing configurations, especially for Docker, as disk space and stability can vary.
Building on Sitecore XM Cloud and Sitecore Search challenged us to adapt, innovate, and lean on our technical expertise, especially when it came to front-end development and optimising Sitecore’s advanced features. Working with Docker, integrating Next.js, and tackling the limitations of the Pages editor underscored the need for flexibility and proactive problem-solving in a cloud-based, headless CMS environment. These experiences, while demanding, have equipped us with a deeper understanding of Sitecore XM Cloud and how to leverage it for scalable, modern digital experiences.
Sitecore’s Partner Technical Advisory team was an invaluable part of our journey, providing timely support and solutions that helped us overcome the more complex aspects of the platform. By tapping into Sitecore’s resources and working closely with their team, we not only achieved success but also contributed feedback that improved the platform for future developers.
For teams considering Sitecore XM Cloud, these learnings emphasise the importance of strategic planning, technical adaptability, and collaboration with Sitecore’s experts. By understanding the challenges and solutions presented in both articles, development teams can confidently approach XM Cloud projects, ready to create innovative, future-proof digital experiences that meet the demands of 2025 and beyond!