Skip to main content

Standalone ACS Commons

GitHub Repository

ACS AEM Commons is the de-facto utility library for AEM teams. It is also a large dependency: dozens of features, shared OSGi wiring, and more surface area than most projects need for the one or two helpers they actually use.

standalone-acs-commons is a collection of standalone AEM as a Cloud Service modules. Each top-level folder is an in-house replacement for a single ACS Commons feature. Modules do not depend on each other or on a shared parent POM -- you copy one folder into your project (or grab a release zip) and move on.

Modules

ModuleReplacesPost
acs.emailACS Commons EmailServiceTemplated Email Service
acs.environment-indicatorShow Author Environment IndicatorAuthor Environment Indicator
acs.genericlistsGeneric ListsGeneric Lists
acs.includeParameterized Include for Dialog WidgetsParameterized Dialog Include
acs.workflowWorkflowPackageManagerWorkflow Package Manager

When to use this instead of ACS Commons

Reach for a standalone module when:

  • You need one ACS Commons capability (templated email, dialog includes, generic lists, ...) and not the rest of the library.
  • You want a smaller dependency footprint and a clearer ownership story for Cloud Service deployments.
  • You prefer a copy-in module you can fork and harden for your project, rather than tracking ACS Commons upgrades for unused features.

Stick with full ACS Commons when you already depend on many of its features, or when a capability you need is not ported here yet.

How to consume a module

Copy the module folder (for example acs.include/) into your repository and add it to your root pom.xml <modules> list. Nothing inside a module folder references the aggregator repo.

Alternatively, download a pre-packaged zip from the Releases page.

mvn clean install # builds every module in the aggregator

Each module README documents its own -PautoInstallBundle / -PautoInstallPackage profiles.