Series · 19 parts · In progress
React Native Module Federation
Build a federated React Native app from scratch with Module Federation and Re.Pack: runtime remotes, the shared-singleton contract, and a host shell that owns navigation.
9 of 19 published Next part · 17 August 2026
- Why Module Federation in React Native What runtime micro-apps buy a React Native app, what they cost, and when the trade is worth it. Intro to a series that builds a federated setup from scratch.
- Your first federated remote in React Native Two React Native apps, one loading the other's screen at runtime over Module Federation 2.0 with Re.Pack. Every step copy-paste, ending in a running app.
- The shared-singleton contract in React Native Module Federation Share react, react-native and a native library across a host and its remote the right way; getting it wrong crashes the app on launch, not quietly.
- The host shell: federated remotes as tabs in React Native Turn the host from a single screen into a real app shell: it owns the tab bar and navigation, and each tab is a remote built, shipped and loaded on its own.
- The contract package: a versioned seam between federated remotes in React Native No app can see what the others ship. Two packages, published and installed by version (a typed contract and the shared detail screen), give every side one definition and let semver govern drift.
- One shared store: server state across federated remotes in React Native A remote and an installed package inject their endpoints into one host store and share one cache; get the sharing wrong and the screen hangs on a spinner that never resolves.
- Who owns what: boundaries, teams and coupling in a federated React Native app Who owns a boundary, a component, a data definition? Five tests for cutting a federated React Native app along team lines, and what moves each answer.
- Client state across the seam: remotes that bring their own slices in React Native A remote injects the slice it alone owns into the shared store, the contract carries the one action that crosses, and a write arrives as a prop; dispatch before the slice exists and the add vanishes in silence.
- State stacks under federation: the same React Native app built twice TanStack Query and Zustand rebuild the app Redux Toolkit and RTK Query just built; both work, and what separates them is what happens when independent teams stop coordinating.
- The design system as a federated singleton
- Accessibility testing across federated remotes
- shell.navigateTo: RN ↔ native handoff
- The production build and the three modes
- Loading remotes from a CDN + version resolution
- The live two-version flip
- Offline fallback baked into the binary
- In-session fallback when a remote fails
- Signing the version-map + replay/rollback guard
- Health-based cross-launch auto-rollback