{"id":22392,"date":"2022-05-18T19:08:11","date_gmt":"2018-07-19T10:53:00","guid":{"rendered":"https:\/\/www.bloomreach.com\/library\/a-cms-that-actually-works-with-single-page-application-frameworks-like-angular-and-react"},"modified":"2025-03-20T23:13:36","modified_gmt":"2025-03-20T23:13:36","slug":"cms-for-single-page-application-frameworks-like-angular-and-react","status":"publish","type":"library","link":"https:\/\/www.bloomreach.com\/en\/blog\/cms-for-single-page-application-frameworks-like-angular-and-react","title":{"rendered":"A CMS That (actually) Works with Single Page Application Frameworks like Angular and React"},"content":{"rendered":"<p>In Bloomreach Experience v12.3\u00a0 we\u2019ve introduced an easier way to handle SPAs (and headless development in general) &#8211; and we wanted to tell you exactly why we are so excited with this new feature. I\u2019ll be going over this in 3\u00a0parts:<\/p>\n<p><strong>[Part 1]\u00a0<a href=\"\/site\/api\/pagenotfound\">What is a\u00a0Single Page Application and why do people like them so much?<\/a><\/strong><\/p>\n<p>A quick overview on the difference between SPAs and the traditional way to build a website. Along with a look at why SPAs are rising in popularity among developers and why SPAs and CMSs were historically a difficult pairing.<\/p>\n<p><strong>[Part 2]\u00a0<a href=\"\/site\/api\/pagenotfound\">A CMS that works with SPAs like Angular and React &#8211; and makes both developers and marketers happy<\/a><\/strong><\/p>\n<p>The fun part! How Bloomreach architecture and new SPA++ support lets developers leverage SPAs while ensuring marketers keep all the modern editing tools they need. We\u2019ll look at how Preview and other key editing features work.<\/p>\n<p>Bloomreach\u2019s native server-side personalization and its content-based architecture makes it the perfect match for enterprise SPA use. We\u2019ll dive in a bit deeper into content personalization and sharing content between an SPA and the traditionally built parts of your experience.<\/p>\n<p><strong>If you\u2019re a developer looking for how Bloomreach handles SPAs differently, you might want to jump to Part 2<\/strong>, and check out the links on implementation and more below. If you\u2019ve been hearing the term SPA and just want to know what in the world it is, start from the beginning.<\/p>\n<p><strong>Just want the code? Here are some helpful links:<\/strong><\/p>\n<ul>\n<li><strong><a href=\"https:\/\/www.onehippo.org\/library\/concepts\/spa-plus\/introduction.html\" target=\"_blank\" rel=\"noopener\">SPA++ for Seamless SPA Integration Experiences<\/a><\/strong><\/li>\n<li><strong><a href=\"https:\/\/www.onehippo.org\/library\/concepts\/spa-plus\/page-model-api\/introduction.html\" target=\"_blank\" rel=\"noopener\">Introduction to Page Model JSON API<\/a><\/strong><\/li>\n<li><strong><a href=\"https:\/\/www.onehippo.org\/labs\/integrate-a-react-application-with-bloomreach-experience.html\" target=\"_blank\" rel=\"noopener\">Integrate a React Application with Bloomreach Experience<\/a><\/strong><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>In Bloomreach Experience v12.3\u00a0 we\u2019ve introduced an easier way to handle SPAs (and headless development in general) &#8211; and we wanted to tell you exactly why we are so excited with this new feature. I\u2019ll be going over this in 3\u00a0parts: [Part 1]\u00a0What is a\u00a0Single Page Application and why do people like them so much? [&hellip;]<\/p>\n","protected":false},"author":141,"featured_media":13585,"template":"","ew-regions":[],"ew-solutions":[],"library_type":[513],"library_blog_tag":[],"industry":[],"channel":[],"topic":[],"class_list":["post-22392","library","type-library","status-publish","has-post-thumbnail","hentry","library_type-blog"],"acf":{"library_blog_banner_content":"","library_blog_banner_cta1_text":"","library_blog_banner_cta1_href":"","library_blog_banner_cta1_new_tab":false,"library_blog_banner_cta2_text":"","library_blog_banner_cta2_href":"","library_blog_banner_cta2_new_tab":false,"library_blog_banner_bg_color":"#EAF7FE","library_blog_banner_cta_text_color":"#FFF","library_blog_banner_cta_bg_color":"#019ACE","library_blog_banner_cta2_text_color":"#000","library_blog_banner_cta2_bg_color":"#FFF","library_blog_chatgpt_content":"","library_blog_chatgpt_cta_href":"","library_blog_chatgpt_cta_text":"Ask ChatGPT"},"_links":{"self":[{"href":"https:\/\/www.bloomreach.com\/en\/wp-json\/wp\/v2\/library\/22392","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.bloomreach.com\/en\/wp-json\/wp\/v2\/library"}],"about":[{"href":"https:\/\/www.bloomreach.com\/en\/wp-json\/wp\/v2\/types\/library"}],"author":[{"embeddable":true,"href":"https:\/\/www.bloomreach.com\/en\/wp-json\/wp\/v2\/users\/141"}],"version-history":[{"count":2,"href":"https:\/\/www.bloomreach.com\/en\/wp-json\/wp\/v2\/library\/22392\/revisions"}],"predecessor-version":[{"id":59243,"href":"https:\/\/www.bloomreach.com\/en\/wp-json\/wp\/v2\/library\/22392\/revisions\/59243"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.bloomreach.com\/en\/wp-json\/wp\/v2\/media\/13585"}],"wp:attachment":[{"href":"https:\/\/www.bloomreach.com\/en\/wp-json\/wp\/v2\/media?parent=22392"}],"wp:term":[{"taxonomy":"ew_regions","embeddable":true,"href":"https:\/\/www.bloomreach.com\/en\/wp-json\/wp\/v2\/ew-regions?post=22392"},{"taxonomy":"ew_solutions","embeddable":true,"href":"https:\/\/www.bloomreach.com\/en\/wp-json\/wp\/v2\/ew-solutions?post=22392"},{"taxonomy":"library_type","embeddable":true,"href":"https:\/\/www.bloomreach.com\/en\/wp-json\/wp\/v2\/library_type?post=22392"},{"taxonomy":"library_blog_tag","embeddable":true,"href":"https:\/\/www.bloomreach.com\/en\/wp-json\/wp\/v2\/library_blog_tag?post=22392"},{"taxonomy":"industry","embeddable":true,"href":"https:\/\/www.bloomreach.com\/en\/wp-json\/wp\/v2\/industry?post=22392"},{"taxonomy":"channel","embeddable":true,"href":"https:\/\/www.bloomreach.com\/en\/wp-json\/wp\/v2\/channel?post=22392"},{"taxonomy":"topic","embeddable":true,"href":"https:\/\/www.bloomreach.com\/en\/wp-json\/wp\/v2\/topic?post=22392"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}