Expand my Community achievements bar.

SOLVED

Core Components Vs Foundation Components

Avatar

Level 10

Hi all,

 

1. Core Components should be used in place of Foundation Components, as they have multiple advantages.

But my question is whether there is any use case where a Foundation Component is preferred to a Core Component?

 

2, Are Core Components available for all Foundation Components or for some of them they are not there and so we need to mandatorily use Foundation Component?

 

I highly appreciate all your responses.

 

Thanks,

RK.

Topics

Topics help categorize Community content and increase your ability to discover relevant content.

1 Accepted Solution

Avatar

Correct answer by
Community Advisor

@AEM_Forum 

  1. While Core Components generally offer advantages over Foundation Components due to their enhanced features, flexibility, and compatibility with newer technologies, there can still be specific use cases where Foundation Components are preferred. Here are a few scenarios where Foundation Components might be preferred:

    • Legacy Systems: In legacy systems or projects where there is already a significant investment in Foundation Components and rewriting them with Core Components might not be feasible or cost-effective.
    • Specific Functionality: Foundation Components might offer specific functionalities or configurations that are not yet available in Core Components or are better suited for certain requirements.
    • Stability: Foundation Components might be preferred in scenarios where stability and long-term support are critical, as they are typically more mature and have been thoroughly tested in various environments.
  2. Core Components are not available for all Foundation Components. While Adobe continues to expand the range of Core Components, there may still be some Foundation Components for which Core Components are not available. In such cases, you would need to use the Foundation Components. However, Adobe actively encourages migrating to Core Components whenever feasible, as they offer numerous benefits in terms of performance, extensibility, and compatibility with modern development practices.

It's essential to evaluate the specific requirements of your project and weigh the advantages and limitations of both Core and Foundation Components to determine the most suitable option for your use case.

View solution in original post

3 Replies

Avatar

Correct answer by
Community Advisor

@AEM_Forum 

  1. While Core Components generally offer advantages over Foundation Components due to their enhanced features, flexibility, and compatibility with newer technologies, there can still be specific use cases where Foundation Components are preferred. Here are a few scenarios where Foundation Components might be preferred:

    • Legacy Systems: In legacy systems or projects where there is already a significant investment in Foundation Components and rewriting them with Core Components might not be feasible or cost-effective.
    • Specific Functionality: Foundation Components might offer specific functionalities or configurations that are not yet available in Core Components or are better suited for certain requirements.
    • Stability: Foundation Components might be preferred in scenarios where stability and long-term support are critical, as they are typically more mature and have been thoroughly tested in various environments.
  2. Core Components are not available for all Foundation Components. While Adobe continues to expand the range of Core Components, there may still be some Foundation Components for which Core Components are not available. In such cases, you would need to use the Foundation Components. However, Adobe actively encourages migrating to Core Components whenever feasible, as they offer numerous benefits in terms of performance, extensibility, and compatibility with modern development practices.

It's essential to evaluate the specific requirements of your project and weigh the advantages and limitations of both Core and Foundation Components to determine the most suitable option for your use case.

Avatar

Community Advisor

Hi @AEM_Forum 

  1. While Core Components are generally preferred over Foundation Components due to their advantages, there may be some use cases where a Foundation Component is still preferred. For example, if you have an existing project that heavily relies on Foundation Components and you do not have the resources to migrate to Core Components, it may be more practical to continue using Foundation Components. Additionally, there may be some specific functionality or customization that is only available in a Foundation Component and not yet available in a Core Component.

  2. Core Components are available for most of the Foundation Components, but not all of them. Adobe has been working on migrating all Foundation Components to Core Components, but some components may still be in the process of being migrated or may not be migrated at all. In such cases, it may be necessary to continue using the Foundation Component or to develop a custom component to replace it. 

https://experienceleague.adobe.com/docs/experience-manager-core-components/using/developing/overview... 
https://experienceleaguecommunities.adobe.com/t5/adobe-experience-manager/foundation-component-vs-co... 



Avatar

Community Advisor

@AEM_Forum 

 

@Raja_Reddy & @Imran__Khan have very well summarized the details for us.

 

Few cents from my side:

 

Regular Updates: Core components receive regular updates and are continuously being improved to incorporate the latest AEM features. For example, consider Image component, it has been enhanced from v1-v3 in areas like responsiveness, Dynamic Media support, Src sets, etc.

 

Preference for Core Components: It's recommended to prioritize the use of AEM Core components for new projects due to their continuous improvement and alignment with evolving AEM features and standards.

 

If core component is available for all foundation:

When transitioning from old features or software to new ones, it's common for not all features to be directly transferrable. With AEM core components, there might be new methods or approaches for achieving similar functionalities. For instance, the deprecated iparsys (Inherited paragraph system) has been discouraged in favor of experience fragments or context-aware configurations based on specific requirements.

 

Minimize Use of Foundation Components: While Foundation components may still be necessary in certain cases, it's advised to minimize their usage, as they represent older methodologies. Emphasizing the adoption of newer approaches provided by Core components is seen as beneficial for leveraging the latest capabilities of AEM.

 


Aanchal Sikka