What is AEM Project Archetype

When starting a new project in Adobe Experience Manager (AEM), one of the first steps is choosing a project archetype. This decision forms the foundation upon which your entire project will be built. But what exactly is an AEM project archetype, and why does it matter? In this guide, you’ll learn what an AEM project archetype is, why it’s essential, and how to select and use one.

Key Takeaways

  • An AEM project archetype is a project template that provides a predefined structure and set of tools for an AEM project.
  • Archetypes come with best practices and recommended structures baked in.
  • The AEM project archetype is selected when creating a new AEM project using Maven.
  • AEM project archetypes can be customized to suit specific project needs.

Unpacking the Concept of an AEM Project Archetype

In AEM, an archetype is a project template that provides a predefined structure for your project. It’s like a blueprint for your project, outlining where different types of files should go and what tools and configurations will be available.

Archetypes and Best Practices

A key benefit of using an archetype is that it encapsulates best practices. This means that an archetype comes pre-loaded with recommended structures and configurations, helping to ensure that your project follows AEM best practices from the get-go.

Using Maven to Select an Archetype

Maven, a project management and comprehension tool, is used to create AEM projects. When creating a new AEM project with Maven, you’ll be asked to select an archetype.

To create a new project with an archetype in Maven, you’ll use a command like this:Copy

mvn archetype:generate -DarchetypeGroupId=com.adobe.granite.archetypes -DarchetypeArtifactId=aem-project-archetype -DarchetypeVersion=23

In this command:

  • archetype:generate tells Maven to create a new project.
  • -DarchetypeGroupId specifies the group ID of the archetype.
  • -DarchetypeArtifactId specifies the artifact ID of the archetype.
  • -DarchetypeVersion specifies the version of the archetype.

Understanding the Structure of an Archetype

An AEM project archetype provides a specific structure for your project. This structure includes folders for different types of files, as well as pre-configured tools and settings. Here’s a basic overview of the structure provided by the AEM project archetype:

coreContains Java code and OSGi configurations.
ui.appsContains the project’s AEM components and templates.
ui.contentContains content such as pages and assets.
it.testsContains integration tests.

Customizing an Archetype

While an AEM project archetype provides a solid starting point, it may not perfectly fit your project’s needs. In such cases, you can customize the archetype. This can involve adding or removing folders, changing the configuration of tools, or even adding new tools.

The Importance of Selecting the Right Archetype

The archetype you select will shape your project’s structure and toolset, so it’s crucial to choose the right one. The best archetype for your project depends on the project’s needs and requirements. For example, if you’re building a project that will heavily use AEM’s content management capabilities, you might choose an archetype that includes a lot of tools and configurations tailored to content management.


In AEM, a project archetype serves as a project template, providing a predefined structure and set of tools. It’s selected when creating a new AEM project using Maven, and it can be customized to better suit the needs of a specific project. By encapsulating best practices, an AEM project archetype helps ensure that your project is built on a solid foundation right from the start.

Leave a Reply

Your email address will not be published. Required fields are marked *