Getting Started — Overview

Native Federation is a set of tools to build decentralized micro frontends architectures. It consists of two components — a builder for the remotes (micro frontends), and a runtime for the shell/host.

The builder itself splits in two: a Core that does the heavy lifting, and a bundler-specific Adapter (Angular, esbuild, …) that wires the Core into your build pipeline. On the host side, the Runtime reads every remote's remoteEntry.json, merges them into one import map, and resolves loadRemoteModule() against it.

To help you find the right information, we broke the information up into sections: "Getting started" gives you an overview of how the components work together, the "runtime" part shows you how you can hook native-federation into your (existing) application. The "core" part shows how native-federation builds your remotes and how you can influence/optimize the build process. Finally, the adapters are for your specific setup. We provide first-class support for Angular but we're also providing some options for your favorite framework/setup. The lightweight "esbuild" adapter is your general jack-of-all-trades that will work with most frameworks, but if you need more customizability, BYOA! (build your own adapter).

Note: This is the documentation for v3. The current major is v4 — see v3 vs v4 for what changed and Migration to v4 for the upgrade.

Build a remote

Load remotes on a host at runtime

New to Native Federation?

If you've landed here without context, start with the conceptual pages first: