AEM Component Builder
| Request for Feature Enhancement (RFE) Summary: | Better way to create custom AEM components |
| Use-case: | One needs to build from scratch a new AEM component |
| Current/Experienced Behavior: |
In the current AEM world, there are way too often the situations when developers end up building new AEM components (and not use the core components).
The experience of building a new component is not very pleasant, prone to human mistakes due to the heavy ponderous coding. Working manually with the XML to define the dialogs makes the developer very often lose focus on the big picture and easy get lost into details about not forgetting to add the well-known <items> element, or to keep track of tabs, or to properly arrange dialog fields, or to make the dropdowns work (specially when we have multiple dependent ones) and so on. All becomes even more complicated when he needs to (also manually) add extra clientlibs having to careful when writing it and not add a typo. On top of this, he often needs to go on the Granite UI Foundation specification page to lookup for the component in question and see what is the overall structure, what attributes it accepts and what they do, and then come back in the XML and manually add what he needs. Currently the Components tool (/libs/wcm/core/content/sites/components.html) is very poor. It is only giving you info data, not giving you much power to edit the component. |
| Improved/Expected Behavior: |
Have a built-in UI tool to design a component in a more visual way rather then manual XML work, that should do the following:
The readme would contain the component’s documentation (like usage instructions) which can later be used by the editors and developers alike.
Here there might be some potential constraints, considering component will run outside project context, so in the real project we might have slightly different results, but this a details left open to be clarified later on.
- For example the OOTB Component tool allows you to see where is the component used. But it can do much more, like for example to have an one click away button to update all component instances with the new updated version.
Currently developers do this in two cumbersome-ish ways:
9. For now we can keep the HTL out of this tool, even if this could potentially be handled here as well.
------------------------------------------------------------------------------------------------------------------
The solution is not refined in depth, so there is a lot of room to change the idea. But the whole point is that we need a better, safer, easier and faster way to create AEM components. |
| Environment Details (AEM version/service pack, any other specifics if applicable): | All new AEM versions (AEM 6.5, AEMaaCS) |
| Customer-name/Organization name: | tethich.com |
| Screenshot (if applicable): | |
| Code package (if applicable): |



