HomeFrontend Development › SPA editor overview

SPA editor overview

Purpose: Understand how React/Angular SPAs integrate with AEM authoring, and when to choose SPA vs server-rendered.

Who this page is for

AudienceWhy it matters to you
React engineersThe "can I just write React?" answer
Tech leadsArchitecture choice

The idea

The SPA editor pattern lets a React app render AEM content while remaining author-editable: the app consumes the page's .model.json, maps resourceTypes to React components, and the author's editor overlays editing UI onto the running app.

AEM page model (.model.json)
        │
        ▼
@adobe/aem-react-editable-components
  MapTo('phi/components/plancard')(PlanCard)   ← resourceType → React component
        │
        ▼
React renders; author edits in place; edits persist to JCR; model refreshes

The trade, honestly

Server-rendered (HTL)SPA editor
Frontend DXHTL + clientlibsFull React toolchain
RenderingCached HTML, fast TTFBJS boot cost; SSR possible but complex
Authoring fidelityFullGood, with discipline (editable containers, model sync)
Component costHTL+dialog+modelReact component + dialog + model + MapTo
CachingSimple (pages)Model JSON + app shell caching design
Team fitMixed teamsStrong JS teams committed to the pattern

Guidance

Quick navigation