
Install Adobe Experience Manager locally to develop and test changes, compare AEM 6.5 with AEM as a cloud service, and follow the same concepts across versions.
Generate a Maven project using the Adobe IAM project archetype to create a multi-module AEM site, configure modules, build, and deploy to a local IAM instance.
Explore how templates are stored in the AEM repository, inspecting the page content template properties, structure mode components, and responsive layout nodes for desktop and phone.
Explore conditional rendering in AEM with granite hidden and granite hide, using expression language and a design variable to control component visibility.
Learn block statements in HDL through hands-on practice, using data slide text, data element, and data slide test to manipulate content, tags, and rendering; explore templates and includes.
Discover how client side libraries organize CSS and JavaScript, load into dialogs, and merge files to reduce HTTP requests; create a library with content XML, a JS folder, and js.txt.
Improve the authoring experience for advanced list components by enforcing required fields for badge, description, and multi-field item counts, with configurable limits and dedicated client-side validations and markup updates.
Hi, and welcome to this course! My name is Andrii Bortnikov, and I am a Software Engineer specializing in Adobe Experience Manager.
This is the first course in a two-course series dedicated to Adobe Experience Manager. In this course, we will start learning Adobe Experience Manager from scratch.
We'll start with the Introduction section, where we’ll get familiar with Adobe Experience Manager, its history, different versions, and so on.
Next, we'll cover the installation process, discuss the local development flow, and explore the codebase of an AEM project.
After that, we will learn about different fundamental concepts and features, such as pages, the repository, package management, learn about templates and template types, policies, components, and so on.
Then, we will dive deeper into the coding aspects and learn about the HTML Template Language, Client-Side Libraries, the ui.frontend module, the Style System, and so on.
Then, we’ll go even further, and learn about the Apache Sling Framework, Sling Models, explore different AEM APIs, learn about the OSGi Framework, as well as different environments, run modes, Sling Servlets, Sling Filters, and so on.
Then, we will also have a dedicated section on testing our AEM code, where we will learn how to test everything we learned in the previous sections.
Then, once we’re done with that, we’ll learn about even more AEM features, such as Experience Fragments, Assets, Content Fragments, and Tags.
Okay, great! So, as you can see, this is quite a comprehensive course. And because of that, let’s talk a little bit about how to get the most out of it:
First of all, the topics in this course are structured logically, starting from the basics and moving to more advanced concepts. So, you do not need to have any prior knowledge of AEM; we’ll learn everything step by step. And, because of this, I highly recommend following the course sequentially, without skipping any lessons.
Secondly, I really encourage you to take notes or even code along with me.
Then, there are also homework assignments for almost every section, sometimes even more than one. And, I strongly encourage you to complete these assignments and then review my solutions as well. That way, you’ll not only learn the theory but also gain practical experience.
Okay, great! I hope you are now familiar with the structure of this course.
But, in order to support the course videos, I’ve also created a GitHub repository containing all the code we’ll write throughout the course. For each section, there is a starting branch, which contains the code before we begin the section, and a finalized branch containing the completed code for that section. So, this way, you can always review the entire codebase or compare your code with mine if you have any questions. And, you’ll find the link to the GitHub repository in the file attached to the Introduction video.
Also, if you’d like to connect with me, you can find the link to my LinkedIn profile in the file attached to the Introduction video.
I’ve also created a Discord community where we can discuss AEM and where I’ll post updates regarding this course. You can find the link to the Discord community in that file as well.
Okay, great!
So, that’s pretty much it. Let's start learning AEM!