Creating organization core components | Community
Skip to main content
Level 2
August 17, 2022
Solved

Creating organization core components

  • August 17, 2022
  • 2 replies
  • 1118 views

Hello Adobe friends,

 

I am working on a new project of mine. I am contemplating creating an organization's core components based on WCM Core Components and adding an organization branding and style system. Now several questions in mind I'd like to raise:

 

  1. Where should the core components be located?
    1. Would it still be under apps/org-core or under core/org-core?
  2. If core/org-core, would it be possible to make it a maven dependency to another project?
    1. Are there any reference architectures to back this idea?
This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.
Best answer by GanthiRa1

@bluestella 

You have to refer it in maven dependency for deploying and use resourceSuperType to extend your core components.

2 replies

Community Advisor
August 17, 2022

Hi @bluestella , the best practice is to keep your organization core components library under apps/org-core which you can add it as a maven dependency in your applications.

Level 2
August 17, 2022

But then again, is referencing from maven dependency a best practice, or should we extend the org-core components to another AEM project as a supertype/resourcetype?

B_Sravan
Community Advisor
Community Advisor
August 17, 2022

resourceSuperType should be used. The intention behind this is whenever there is an update to the core components from Adobe, all your proxy components will be updated to the latest standards.

B_Sravan
Community Advisor
Community Advisor
August 17, 2022

Hi @bluestella 

 

The folder structure is always a good practice to follow and there ain't any mandatory folder structure to follow.

 

The best way to follow would be using the archetype-generated folder structure. As you were asking about the location of the core components, that's where we can organize our component folders. I am currently following this structure for one of the projects, where we hold multiple sub-projects under a parent. See if this aligns to your liking.

 

apps/
        my-project/
                        - clientlibs/
(all client libraries) - components/ sub-project content structure custom - config - i18 - templates - install

Under content, I have all my core components(proxy) + common components that could be used in all sub-projects.

 

I hope this helps.
Thank you,

Sravan