Skip to content

Quick Start

Runtime Module Composition lets a single page be assembled from pieces built with entirely different frontend frameworks, each developed and deployed on its own. A host owns the page and the import map; each slice is an independently built ESM module the host resolves and mounts at runtime — nothing here requires every piece to share a build pipeline or a release schedule, and Independent Mount doesn’t even require the host and slice to share a framework.

Pick the pattern that matches how the slice should relate to the host:

Module Boundary and Independent Mount are two different answers to the same question: how does the host hand control to a slice? Module Boundary keeps the slice inside the host’s own render tree, loaded through its native lazy/Suspense machinery — host and slice must share a framework. Independent Mount hands the slice a DOM element and lets it manage its own lifecycle through a mount()/unmount() contract, so the host stays framework-agnostic to whatever the slice is built with. Not sure which one fits your situation? See Choose a Pattern. For the concepts behind either, see Technical Implementation.

Written by Angelo Vagenas