Skip to content

Shell, Host, or Container in MFF

is the word host, shell or container is same ?

Yesin the context of micro frontends in 2025, "host", "shell", and "container" are used almost interchangeably by the community and official documentation. They all refer to the same thing: the lightweight application that orchestrates and composes the individual micro frontends.

Here’s the exact terminology used by the most popular tools and companies today (2025):

Term Who Uses It Officially Exact Meaning (100% the same thing)
Shell Single-SPA (official docs), Zalando, DAZN, Open Components The orchestrating app that loads and composes MFEs
Host Webpack Module Federation (official docs), most React teams The app that declares “remotes” and consumes shared modules
Container Single-SPA (very common), Luca Mezzalira’s book, Michael Geers’ book Same as shell/host – the top-level app that contains MFEs
Root single-spa-root-config (default name in Single-SPA) Same concept
Orchestrator Some European enterprises (ING, Siemens) Same concept
Layout app single-spa-layout,

Real Examples from 2025 Documentation

Tool / Company What They Call It Link / Quote (2025)
Webpack Module Federation Host “The host is the application that consumes remote modules”
Single-SPA Shell or Container “The root config (shell) registers applications”
Nx Workspace examples Host apps/shell or apps/host
Zalando (public talks) Shell “Our shell is only 18 kB and uses import maps”
Open Table, Spotify Container Legacy naming that stuck
Bitovi, Nearform Host / Shell interchangeably Used both in same blog post

So Which Word Should You Use in 2025?

Context Recommended Term Why
Talking to React + Webpack teams Host They live in Module Federation world
Talking to framework-agnostic or single-spa teams Shell Most neutral and widely understood
Writing architecture docs for mixed teams Shell (Host) Put both the first time, then pick one
Naming the actual repo/folder shell or host Both are common (apps/shell, host-app)

Bottom Line

Yes — host = shell = container = root-config = orchestrator.

They are 100% synonyms in the micro frontend world.

Just pick one style and stay consistent in your own project:

# All mean the same thing
apps/shell/
apps/host/
apps/container/
apps/root-config/

Most modern companies in 2025 use either shell (if they love single-spa or want to sound framework-agnostic) or host (if they are heavy Module Federation users). Both are perfectly correct.