The Core Components implement several patterns that allow easy customization, from simple styling to advanced functionality reuse.
The Core Components were designed from the beginning to be flexible and extensible. A look at an overview of their architecture reveals where customizations can be made.
1. The design dialog defines what authors can or cannot do in the edit dialog.
2. The edit dialog shows authors only the options they are allowed to use.
3. The Sling model verifies and prepares the content for the view (template).
4. The result of the Sling model can be serialized to JSON for SPA use-cases.
5. The HTL renders the HTML server-side for traditional server-side rendering.
6. The HTML output is semantic, accessible, search-engine optimized, and easy to style.