SPA Editor Deprecation
- Topics:
- Developing
CREATED FOR:
- Admin
- Developer
Though the SPA Editor remains supported by Adobe, learn what its deprecation means to your project and what options you have for future projects.
Summary
Adobe deprecated the SPA Editor with release 2025.01 of AEM as a Cloud Service, meaning that no further enhancements or updates will be made to its SDKs. Adobe encourages you to use the Universal Editor for any new projects in order to take advantage of AEM’s latest innovations.
Details of Deprecation
The deprecation of the SPA Editor does not mean immediate removal, and if you have existing implementations, you can continue using it as long as it meets your needs. However, please be aware of the following implications of its deprecation.
- Going forward Adobe will only address P1 and P2 issues and security vulnerabilities.
- No further developments, enhancements, or updates will be made to its SDKs.
The deprecation means that the following SDKs are now in feature freeze.
Alternatives to the SPA Editor
The most suitable replacement for the SPA Editor depends on your projects needs.
-
The Universal Editor is the best direct replacement for the SPA Editor.
- The Universal Editor is also a visual editor and was designed specifically for decoupled implementations, incorporating all of Adobe’s experience from the SPA Editor.
- The Universal Editor has also been released for AEM 6.5 (with release 2024.11.05 of AEM 6.5) and therefore supports AMS and on-prem use-cases in addition to Cloud Services.
-
The Content Fragment Editor is an alternative for those who prefer a form-based editor.
- The Content Fragment Editor is best suited when your content is structured as Content Fragments rather than as pages.
Structuring content with Content Fragments does not exclude the use of the Universal Editor as a visual editor, and both editors can be used together.
Migrating to the Universal Editor
The Universal Editor offers many advantages, making migration to it a great solution for new projects.
- Visual Editing: Like for the SPA Editor, authors can edit content directly within the preview and instantly see how their changes affect the visitor experience.
- Future-Proofing: AEM’s roadmap prioritizes the Universal Editor as visual editor. Adopting it ensures access to the latest innovations and enhancements.
- Simpler Integration: No AEM-specific SDK is required to use the Universal Editor, reducing tech stack lock-in.
- Bring Your Own App: The Universal Editor supports any web framework or architecture, allowing adoption without requiring complex refactoring.
- Extensibility: The Universal Editor benefits from a robust extension framework, including integrations with GenAI, Workfront, and more.
There is no direct migration path from the SPA Editor to the Universal Editor. This is due to fundamental differences in the two technologies.
-
The Universal Editor does not reintroduce features like the Template Editor, Style System, or Responsive Grid.
- These use cases can now be handled more efficiently with lean frontend CSS and JS in Edge Delivery Services or headless projects.
-
Since the Universal Editor is an editor-as-a-service, it cannot allow implementors to inject CSS or JS into the component dialogs.
- This prevents automatic conversion of component dialogs from the Page Editor.
- This affects many areas of the dialogs, like custom widgets, field validation, show/hide rules, and template-based customizations.
With these technical differences in mind, Adobe’s recommendation is to:
- Keep existing SPA Editor sites as they are, since support continues.
- Adopt the Universal Editor for all new developments, including new sites, sections, or pages.
Keep in mind that even though there is no direct implementation of certain SPA Editor features in the Universal Editor, there are new ways to solve the same problems using the new flexibility of the Universal Editor.
Comparing the SPA Editor and the Universal Editor
The Universal Editor offers much more freedom to implementers of web apps, as illustrated in this diagram.
corlib.js
and instructs the Universal Editor via HTML annotations.model.json
API.cq:Dialog
s in AEM.