Discuss project

Kickstart Your AEM Website in Seconds

Authors: Svetlana Suvorova, Alexander Markov

Want to kickstart your Adobe Experience Manager (further AEM) based website in seconds? Softwerke experts are ready to help you launch a new AEM project with a production ready deployment solution built with AEM best practices and up-to-date frameworks.

Contents

1. What’s Included

Our AEM project kickstart solution provides typical website functionality:

2. Used Techonologies and Frameworks

  • Java 8 – one of the most wide-spread LTS Java versions
  • Adobe Experience Manager 6.4+ – latest AEM versions
  • Maven 3 – one of the most popular project build tools
  • OSGi R6 annotations – new standard for OSGi services and components which replaced old-fashioned Apache Felix SCR annotations
  • Sling Models – mapping framework to pass component configuration from AEM Author dialog to frontend
  • Vue.js – modern and fast framework for reactive frontend components which eliminates old style jQuery approach
  • MySQL or any other SQL database – secure storage for the user data
  • Hibernate ORM 5.4.5/JPA 2.2 – out-of-the-box mapping of your new entities to backend Java objects

3. Maven Archetype

Maven archetype provides unique opportunity to start a new AEM project as fast as possible by producing the ready-to-deploy code in seconds. The only thing needed is design required by the customer. Any functionality enhancement needs less effort because implemented components are built with AEM best practices.

3.1. Project Kickstart from an Archetype

Maven archetype provides the following properties for project creation:

  • groupId – Maven project groupId
  • artifactId – Maven project artifactId
  • version – Maven project version
  • package – root Java package
  • artifactNameInDescription – project title in classes, services, components etc
  • appsFolderName – name of the AEM project folder under /apps
  • componentGroupName – group title for AEM UI components
  • contentFolderName – name of the AEM content folder under /content
  • packageGroup – AEM content package group title
  • brandId – customer brand identifier
  • siteName – site title
  • javascriptNamespace – namespace for JavaScript files
  • optionIncludeErrorHandler – y/n to include a custom 404 Not Found page

3.2. AEM Best Practices

Our Maven archetype features several common AEM development best practices:

  • AEM system users for reading and writing data
  • OSGi configuration for Hibernate and SQL database
  • OSGi configuration for runtime application parameters like user session lifetime, password restore link expiration, redirect pages etc
  • validation of all user generated data on frontend and backend
  • Maven profiles for content package deployment to AEM Author and Publish

3.3. User Registration AEM Component

User registration component provides form configuration on AEM Author and automatic user authentication after successful registration aka autologin.

3.4. User Login AEM Component

User login component implements user autentication with a classic HTML form.

3.5. User Profile AEM Component

User profile component includes configuration of the field visibility and view types (embedded or modal window).

3.6. Password Change AEM Component

Password change component implements password modification for an authenticated user

3.7. Password Reset AEM Component

Password reset component provides password recovery for a registered user via an email notification with a unique link.