All Projects → adobe → Aem Project Archetype

adobe / Aem Project Archetype

Licence: other
Maven template to create best-practice websites on AEM.

Programming Languages

javascript
184084 projects - #8 most used programming language
java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to Aem Project Archetype

Tools
Tools to support development, testing and deployment of Marketing Cloud technologies
Stars: ✭ 94 (-72.11%)
Mutual labels:  adobe, aem
etoolbox-authoring-kit
Offers a set of tools that create Granite UI authoring interfaces for Adobe Experience Manager components from Java code. This is a comprehensive solution that makes different widgets work in a coordinated manner, provides greater interactivity in AEM dialogs, and introduces additional features (customizable data lists, options selection, etc.)
Stars: ✭ 93 (-72.4%)
Mutual labels:  maven, aem
cookbook-cq
Chef cookbook for Adobe CQ (aka AEM)
Stars: ✭ 20 (-94.07%)
Mutual labels:  adobe, aem
aem-touch-ui-validation
AEM Touch UI Validation Library
Stars: ✭ 40 (-88.13%)
Mutual labels:  adobe, aem
wcm-io-tooling
Tooling for Maven and IDEs.
Stars: ✭ 12 (-96.44%)
Mutual labels:  maven, aem
Aem Core Cif Components
A set of configurations and components to get you started with AEM Commerce development
Stars: ✭ 60 (-82.2%)
Mutual labels:  adobe, aem
commerce-cif-connector
AEM Commerce connector for Magento and GraphQL
Stars: ✭ 42 (-87.54%)
Mutual labels:  adobe, aem
Generator Jekyll Starter Kit
🚀 Jekyll Progressive Web App Generator.
Stars: ✭ 139 (-58.75%)
Mutual labels:  project-template, best-practices
aem-spa-project-archetype
Maven Archetype for creating new AEM SPA projects
Stars: ✭ 64 (-81.01%)
Mutual labels:  adobe, aem
commerce-cif-magento-graphql
Magento GraphQL data models and query builders for AEM
Stars: ✭ 20 (-94.07%)
Mutual labels:  adobe, aem
aem-docker-getting-started
Getting started guide for development with Adobe Experience Manager and Docker.
Stars: ✭ 38 (-88.72%)
Mutual labels:  adobe, aem
AEM-DataLayer
Simple DataLayer API for Adobe Experience Manager
Stars: ✭ 33 (-90.21%)
Mutual labels:  adobe, aem
aem-cif-project-archetype
Maven template to create new CIF Project AEM projects that follow best practices
Stars: ✭ 20 (-94.07%)
Mutual labels:  adobe, aem
Aem Links
Adobe Experience Manager links, cheat sheets and solutions to common problems.
Stars: ✭ 254 (-24.63%)
Mutual labels:  adobe, aem
Go Consistent
Source code analyzer that helps you to make your Go programs more consistent.
Stars: ✭ 293 (-13.06%)
Mutual labels:  best-practices
Trampoline
Admin Spring Boot Locally
Stars: ✭ 325 (-3.56%)
Mutual labels:  maven
Javapackager
📦 Gradle/Maven plugin to package Java applications as native Windows, Mac OS X, or GNU/Linux executables and create installers for them.
Stars: ✭ 285 (-15.43%)
Mutual labels:  maven
Racket
A complete starting app for developing universal React/Redux web apps with generators, best practices and more
Stars: ✭ 290 (-13.95%)
Mutual labels:  best-practices
Tensorflow Project Template
A best practice for tensorflow project template architecture.
Stars: ✭ 3,466 (+928.49%)
Mutual labels:  best-practices
Spectrum Web Components
Spectrum Web Components
Stars: ✭ 314 (-6.82%)
Mutual labels:  adobe

AEM Project Archetype

Test Maven Central

Maven template that creates a minimal, best-practices-based Adobe Experience Manager (AEM) project as a starting point for your website.

Welcome

Documentation

  • Archetype Documentation: Overview of the archetype architecture and its different modules.
  • Following tutorials are based off this archetype:
    • WKND Site: Learn how to start a fresh new website.
    • WKND SPA Learn how to build a React or Angular webapp that is fully authorable in AEM.

Features

  • Best Practice: Bootstrap your site with all of Adobe's latest recommended practices.
  • Low-Code: Edit your templates, create content, deploy your CSS, and your site is ready for go-live.
  • Cloud-Ready: If desired, use AEM as a Cloud Service to go-live in few days and ease scalability and maintenance.
  • Dispatcher: A project is complete only with a Dispatcher configuration that ensures speed and security.
  • Multi-Site: If needed, the archetype generates the content structure for a multi-language and multi-region setup.
  • Core Components: Authors can create nearly any layout with our versatile set of standardized components.
  • Editable Templates: Assemble virtually any template without code, and define what the authors are allowed to edit.
  • Responsive Layout: On templates or individual pages, define how the elements reflow for the defined breakpoints.
  • Header and Footer: Assemble and localize them without code, using the localization features of the components.
  • Style System: Avoid building custom components by allowing authors to apply different styles to them.
  • Front-End Build: Front-end devs can mock AEM pages and build client libraries with Webpack, TypeScript, and SASS.
  • WebApp-Ready: For sites using React or Angular, use the SPA SDK to retain in-context authoring of the app.
  • Commerce Enabled: For projects that want to use Commerce Integration Framework (CIF) to integrate with commerce solutions like Magento.
  • Forms Enabled: For projects that want to use (Forms).
  • Testing: ready-to-use Functional and UI testing modules, start adding your own tests
  • Example Code: Checkout the HelloWorld component, and the sample models, servelets, filters, and schedulers.
  • Open Sourced: If something is not as it should, contribute your improvements!

Usage

To generate a project, adjust the following command line to your needs:

  • Set aemVersion=cloud for AEM as a Cloud Service;
    Set aemVersion=6.5.5 for Adobe Managed Services, or on-premise. The Core Components dependency is only added for non cloud aem versions as the Core Components are provided OOTB for AEM as a Cloud Service.
  • Adjust appTitle="My Site" to define the website title and components groups.
  • Adjust appId="mysite" to define the Maven artifactId, the component, config and content folder names, as well as client library names.
  • Adjust groupId="com.mysite" to define the Maven groupId and the Java Source Package.
  • Lookup the list of available properties to see if there's more you want to adjust.
mvn -B archetype:generate \
 -D archetypeGroupId=com.adobe.aem \
 -D archetypeArtifactId=aem-project-archetype \
 -D archetypeVersion=26 \
 -D appTitle="My Site" \
 -D appId="mysite" \
 -D groupId="com.mysite"

Note: Make sure you use at least 3.1.0+ of maven-archetype-plugin (#400)

Note: To run above command with older versions, you have to use the old archetypeGroupId: -D archetypeGroupId=com.adobe.granite.archetype

Available Properties

Name Default Description
appTitle Application title, will be used for website title and components groups (e.g. "My Site").
appId Technical name, will be used for component, config and content folder names, as well as client library names (e.g. "mysite").
artifactId ${appId} Base Maven artifact ID (e.g. "mysite").
groupId Base Maven group ID (e.g. "com.mysite").
package ${groupId} Java Source Package (e.g. "com.mysite").
version 1.0-SNAPSHOT Project version (e.g. 1.0-SNAPSHOT).
aemVersion cloud Target AEM version (can be cloud for AEM as a Cloud Service; or 6.5.5, 6.4.8for Adobe Managed Services or on-premise).
sdkVersion latest When aemVersion=cloud an SDK version can be specified (e.g. 2020.02.2265.20200217T222518Z-200130).
includeDispatcherConfig y Includes a dispatcher configuration either for cloud or for AMS/on-premise, depending of the value of aemVersion (can be y or n).
frontendModule general Includes a Webpack frontend build module that generates the client libraries (can be general or none for regular sites; can be angular or react for a Single Page App that implements the SPA Editor).
language en Language code (ISO 639-1) to create the content structure from (e.g. en, deu).
country us Country code (ISO 3166-1) to create the content structure from (e.g. US).
singleCountry y Includes a language-master content structure (can be y, or n).
includeExamples n Includes a Component Library example site (can be y, or n).
includeErrorHandler n Includes a custom 404 response page that will be global to the entire instance (can be y or n).
includeCommerce n Includes CIF Core Components dependecies and generates corresponding artifacts.
commerceEndpoint Required for CIF only. Optional endpoint of the commerce system GraphQL service to be used (e.g. https://hostname.com/grapql).
includeForms n Includes Forms Core Components dependencies and generates corresponding artifacts.
sdkFormsVersion latest When aemVersion=cloud and includeForms=y an Forms SDK version can be specified (e.g. 2020.12.17.02).
datalayer y Activate integration with Adobe Client Data Layer.
amp n Enable AMP support for genenerated project templates.
enableDynamicMedia n Enabled foundation DynamicMedia components in project policy settings and activates Dynamic Media features in Core Image component's policy.

System Requirements

Archetype AEM as a Cloud Service AEM 6.5 AEM 6.4 Java SE Maven
26 Continual 6.5.5.0+ 6.4.8.1+ 8, 11 3.3.9+

Setup your local development environment for AEM as a Cloud Service SDK or for older versions of AEM.

Known Issues

  • When running on Windows and generating the dispatcher configuration, you should be running in an elevated command prompt or the Windows Subsystem for Linux (see #329).

  • When executing the archetype in interactive mode (without the -B parameter), the properties with default values cannot be changed, unless the final confirmation gets dismissed, which then repeats the questions by including the properties with default values in the questions (see ARCHETYPE-308 for details).

  • You can't use this archetype in Eclipse when starting a new project with File -> New -> Maven Project since the post generation script archetype-post-generate.groovy will not be executed due to an Eclipse issue. Workaround is to use the above command line and then in Eclipse use File -> Import -> Existing Maven Project.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].