Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 3 Next »

We will create a new "shell" MFE to act as the top-level host for all other MFEs. It is exclusively responsible for:

  • Initializing the application via @edx/frontend-platform.

  • Loading the base, expected version of all our shared dependencies.

  • Rendering the "layout" of the application, including the header and footer.

  • Loading the brand.

  • Acting as the entry-point for loading MFEs at runtime and during development.

Like other hosts, it is also responsible for:

  • Loading all the manifests from the "guest" MFEs it intends to load.

  • Using module federation to load the guest MFEs on demand.

Architecture

proposed-mfe-architecture.png

Relationship to @edx/frontend-platform

The shell is an MFE, whereas frontend-platform is a library providing access to foundational services like authentication, an HTTP client, internationalization, logging, and analytics. MFEs depend on frontend-platform, but they should be decoupled from the shell application.

  • No labels