Lossless Changelog
product

Module-federation starter lands: host shell, two microfrontends, shared UI package

Tanuj brought up a minimal-but-real module-federation scaffold — a host shell that loads two remote microfrontends from the same monorepo, each exposing a Card component, all sharing a single ui package.

Tanuj SiripurapuCreatoraugmented with Claude Code on Claude Opus 4.7 (1M context)

Why Care?

Module federation is the central architectural bet for augment-it: the workshop isn't one app, it's a composition of independently-deployable microfrontends that the host shell loads at runtime. Until this commit landed, that was a diagram on a whiteboard. Now it's a running build.

Two example microfrontends each expose a Card component via Vite's @originjs/vite-plugin-federation; the host pulls them in as remotes and renders them side-by-side. Crucially, both microfrontends consume a single shared packages/ui package — proving the shared dependencies path works, not just the expose-and-import path.

What's New?

  • apps/host/ — Vite-powered host shell that loads remotes by name.

  • apps/micro-frontend-1/ and apps/micro-frontend-2/ — two example microfrontends, each exposing a Card component as a federated remote.

  • packages/ui/ — first shared package. At this point it carries a Button plus the federation plumbing for the Card components to ride on.

  • Micro Federation Blueprint.md + Micro Federation Explainer.md — Tanuj wrote the architectural intent down alongside the code. These later migrated into Specs/ under content/projects/Augment-It/.

  • A 105-file, +66,838-line drop — the build outputs are checked in for the moment alongside the source so the federation manifest is easy to inspect.

The starter doesn't yet do anything domain-specific — no record collection, no prompts. The point is the frame: a host that loads federated remotes and a shared package they all depend on. Everything else gets built into that frame from here.

Backfilled from git history on 2026-05-12. Commit: 99f1c38.