Skip to content

Multi-Framework Demo

rmc-demo-architecture is a full, runnable reference implementation of the pattern described in Getting Started — a real host shell composing three independently-built slices, each written in a different framework, entirely through import maps.

  • rmc-shell — a React Router host that resolves routes to slices and mounts/unmounts them via createReactAdapter.
  • rmc-react-app, rmc-vue-app, rmc-vanilla-app — three independently-built slices, one per framework (React, Vue, and no framework at all), each built and deployed separately from the shell and from each other.
  • rmc-manifest — the single shared manifest package every workspace imports, so the namespace, external dependency versions, and slice contract stay consistent across the whole system.
  • rmc-index — a production-style static asset host, built with includeRuntimeImportMap(), matching how a real production deployment would generate and serve the import map.

This is the same shape as the production system rmc-toolkit was extracted from: an independently deployed host and slices, sharing dependencies through the browser’s own module resolution rather than a bundler.

Terminal window
git clone https://github.com/runtime-module-composition/rmc-demo-architecture.git
cd rmc-demo-architecture
npm install
npm start

This builds the three slices and starts all four servers together:

Visit http://localhost:5304 and navigate between the React, Vue, and vanilla demo links to see each slice mount independently.

Written by Angelo Vagenas