Directory layout of the application
Review and understand the directory layout of the application.
| Directory path or file | Description |
|---|---|
| packages | Contains the application-provided store root application, single-spa enabled angular applications, and libraries. |
| packages/apps/store-root-app | The store-root-application is a vanilla JavaScript application, which leverages
single-spa framework to act as a router or orchestrator to compose multiple single-spa enabled
angular applications. Note: You cannot customize this application.
|
| packages/apps/store-root-app/src/assets/root-config/config | Contains the JSON configuration files for registering the UMD (Universal Module
Definition) modules of the application-provided angular applications and all the routes of each
angular application.
|
| packages/libs | Contains the application-provided angular libraries. |
| packages/features | Contains the application-provided single-spa enabled angular applications. |
| packages/libs/core | The angular library that contains reusable singleton angular services, components, and utility services. |
| packages/libs/common-components | The angular library that contains reusable angular components, directives, and
pipes. The components in this library do not support customization. |
| packages/libs/functional-components | The angular library that contains reusable angular functional components. These components are built for addressing specific domain or functional use case. You can use these components in screens such as Notes modal, Address capture/display, Product details modal, and so on. |
| app-config.json | The application configuration JSON that contains the development server
configuration such as port, contextRoot, and so on for all the application-provided angular
applications. For more information about app-config.json schema definition, see
Table 1.Note: Ensure that you do not edit or modify the
app-config.json file for
customization. |
| packages/libs/styles | This library contains global and common component styles, icons, and images that are used in the application. |
| Directory path or file | Description |
|---|---|
| extensions | Contains extended single-spa enabled angular applications and libraries. |
| extensions/features | Contains extended single-spa enabled angular applications. This includes newly created custom applications and overridden application-provided screens. |
| extensions/libs | extensions/libs |
| extensions/features/override-component | Angular application for overriding the application-provided components by using differential extensibility. |
| extensions/features/override-modals | Angular application for overriding the application-provided modals by using differential extensibility. |
| extensions/override-static-assets/root-config/custom | Contains JSON configuration files used for customization.
|
| app-config-overrides.json | The application configuration overrides JSON containing the development server
configuration such as port, contextRoot for all the custom angular applications.
Additionally, if you serve custom applications from a remote server, it can be achieved by
configuring useRemote: true. For more information about
app-config.json schema definition, see Table 1. |
| extensions/libs/styles | Use this library to override the application-provided SASS style variables, and adds custom styles to use in extensions. |
| extensions/override-static-assets | Use this folder to override the application-provided JSON configuration files such as translation bundle JSON, persona configuration JSON, and other similar JSON configuration files. |