A micro frontend is a part of a web user interface that a team of its own builds, tests and delivers independently and that grows together with other parts into one application at runtime. The idea is that of microservices (K4), carried over to the user interface. It solves a problem of large organizations, and it costs every team that does not have that problem. The lesson places the idea, tries out a federation locally and ends with a decision for the Kladde. It assumes W10.1 and W10.2 (libraries, boundaries, slices by domain) and K4 4.1.3 (ADR).
State of the checks. Run (Node 24.22.3, Angular 22.2,
@angular-architects/native-federation22.2.5, throwaway project outside the repository, Angular CLI workspace, no Nx): creating the applicationremote, bothinitschematics,ng build remoteandng build kladde-angular(exit 0 each), starting both dev servers and opening the host's/terminepage in a browser; its content and the page's requests are below. Afterward we stopped the servers. Read: the pages native-federation.com (home page, "Getting Started", "Angular Adapter: Getting Started") and the post "Native Federation Just Got Better" from angulararchitects.io, each in the text. Not read: the documentation's pages "Schematics", "Runtime" and "Native and Module Federation", the README on npm (403) and on GitHub (404), the post series "Micro Frontends with Modern Angular" (only linked), a post on the question "do you need this at all" (we found none). Not run: Module Federation with Webpack or Rspack, Native Federation in an Nx workspace, hosts and remotes with different Angular versions, production operation, tests across the seam, web components.
What micro frontends solve
The gain is organizational: team A delivers its part without team B having to build, test and approve along. That pays off when several teams with a cadence of their own work on the same user interface and the cost of coordination is higher than the cost of separation. A single team gains nothing from it: it has to coordinate with itself anyway.