Introduction
What AEM is, the technology stack (Sling, JCR, OSGi), AEMaaCS vs on-premise, installing the SDK, generating a project with the Maven archetype, and a project structure walkthrough.
JCR & Sling
The Java Content Repository, node types and properties, resource resolution, CRXDE Lite, and how Apache Sling maps URLs to content.
OSGi Fundamentals
OSGi bundles, services, the component lifecycle, the Web Console, and configuration management in AEM.
Your First Component
Component anatomy in AEM -- the cq:Component node, HTL template, dialog, and Sling Model. Creating, deploying, and using a simple component.
HTL Templates
The HTML Template Language in depth -- expressions, block statements, global objects, the Use API, and best practices.
Component Dialogs
Touch UI dialogs with Granite/Coral -- field types, tabs, multifields, image upload, validation, and conditional visibility.
Sling Models
Injecting JCR content into Java models -- annotations, adaptables, child resources, OSGi services, exporters, and best practices.
Servlets & Requests
Writing Sling servlets -- resource-type vs path binding, selectors and extensions, safe vs all methods, reading request input safely, and returning JSON to the client.
Templates & Policies
Editable templates, template types, structure vs initial content, component policies, allowed components, and page structure.
Client Libraries
CSS and JS management in AEM -- clientlib structure, categories, dependencies, embedding, proxy serving, and the ui.frontend module.
Building Pages
Using Core Components, the responsive grid, navigation, header and footer, building a homepage and article page, and page properties.
Assets & DAM
The Digital Asset Management repository -- uploading and organizing assets, metadata schemas and tagging, renditions and processing profiles, Smart Tags, Dynamic Media, and programmatic asset access.
Content Fragments & GraphQL
Content Fragment Models, creating and managing fragments, the AEM GraphQL API, persisted queries, and headless content delivery.
Search & Indexing
Querying content with QueryBuilder and JCR-SQL2, why unindexed queries are dangerous, and how to define and deploy the Oak indexes that keep queries fast.
MSM & i18n
Blueprints, Live Copies, rollout configurations, language copies, the translation framework, and i18n dictionaries.
Publishing & Replication
How content moves from author to publish -- activation and deactivation, the replication queue, replication agents vs Sling Content Distribution, publishing references and assets, and troubleshooting stuck queues.
Workflows
Automating content operations with the Granite Workflow engine -- workflow models, launchers, process and participant steps, starting workflows, and when to use Sling Jobs instead.
Dispatcher & Caching
Dispatcher architecture, cache rules, filters, rewrites, vanity URLs, cache invalidation, and local Dispatcher SDK testing.
Security & Permissions
Users and groups, ACLs and permission inheritance, privileges, closed user groups, service users and repoinit, and hardening the publish tier.
Testing & Debugging
Unit testing Sling Models with AemContext and wcm.io mocks, integration and UI tests, code coverage, and the debugging tools -- logs, CRXDE, request progress, and remote debugging -- that save hours.
Deployment & Cloud Manager
Git repo structure, Cloud Manager pipelines, environments, Rapid Development Environments, content transfer, and going to production.
Practice Projects
Six hands-on projects -- from a simple component to a production Dispatcher config -- to reinforce everything covered in the guide.