Tuvix.js monta micro apps de React, Vue, Svelte, Angular y vanilla JS en una sola página host. El enrutamiento, un event bus, el sandboxing y el renderizado en el servidor llegan como paquetes separados que añades cuando los necesitas.
npx create-tuvix-appimport { createOrchestrator } from 'tuvix.js';const orchestrator = createOrchestrator({ router: { mode: 'history', routes: [ { path: '/dashboard/*', app: 'dashboard' }, { path: '/settings/*', app: 'settings' }, ], },});orchestrator.register({ name: 'dashboard', entry: 'https://cdn.example.com/dashboard/main.js', container: '#main-content', activeWhen: '/dashboard/*',});orchestrator.start();/dashboard/overviewname: 'dashboard'activeWhen: '/dashboard/*'name: 'catalog'activeWhen: '/shop/*'name: 'checkout'activeWhen: '/checkout/*'name: 'settings'activeWhen: '/settings/*'@tuvix.js/event-busOcho piezas. Instala el paquete paraguas tuvix.js para obtener las cinco principales, o añade paquetes sueltos a medida que crece tu shell.
Ejecuta micro apps de React, Vue, Svelte, Angular y vanilla JS lado a lado en una sola shell.
Guía de micro appsCada paquete depende solo de otros paquetes @tuvix.js. Instalas los que importas.
Todos los paquetesEl router monta y desmonta apps cuando cambia la URL, en modo history o hash.
@tuvix.js/routerLas apps publican y se suscriben a eventos tipados sin compartir globales.
@tuvix.js/event-busEl shadow DOM mantiene los estilos de cada app dentro de su contenedor. JsSandbox ejecuta un script contra un window Proxy que puedes descartar.
@tuvix.js/sandboxEl loader descarga los bundles de las apps bajo demanda, los guarda en caché y reintenta las cargas fallidas.
@tuvix.js/loaderUn panel dentro de la página lista las apps registradas, la ruta activa y el tráfico del event bus.
@tuvix.js/devtoolsRenderiza micro apps en el servidor y une su HTML en la plantilla de la shell, como string o como stream.
@tuvix.js/serverCada adaptador convierte un componente en una micro app que el orquestador puede montar, actualizar y desmontar.
createReactMicroApp envuelve un componente. useTuvixProps y useTuvixBus leen props y eventos.
npm i @tuvix.js/reactcreateVueMicroApp monta una app de Vue 3, con composables para props y el event bus.
npm i @tuvix.js/vuecreateSvelteMicroApp monta componentes de Svelte 3, 4 y 5.
npm i @tuvix.js/sveltecreateAngularMicroApp inicializa un componente de Angular 15+ dentro de su contenedor.
npm i @tuvix.js/angulardefineMicroApp da a JavaScript plano los hooks mount, unmount y update.
npm i @tuvix.js/coreEmpieza con el paquete paraguas. Cambia a paquetes sueltos cuando quieras una instalación más pequeña.
Paquete paraguas con core, router, event bus, loader y sandbox.
El orquestador. Registra micro apps y ejecuta sus ciclos de vida.
Activa micro apps según la URL, en modo history o hash.
Publish/subscribe tipado entre micro apps.
Carga bundles de apps bajo demanda, con caché y reintentos.
Aislamiento de CSS mediante Shadow DOM y de JS mediante Proxy.
Composición y streaming en el servidor para la página host.
Carga micro apps desde remotes de Webpack Module Federation.
Panel de depuración dentro de la página para apps, rutas y eventos.
Adaptador de React, hooks y utilidades de renderizado en el servidor.
Adaptador de Vue 3, composables y utilidades de renderizado en el servidor.
Adaptador de Svelte con soporte de renderizado en el servidor.
Adaptador de Angular con soporte de renderizado en el servidor.
Plugin de Vite que coloca el CSS de las islas y los enlaces modulepreload en el head del SSR, para que las micro apps renderizadas en el servidor tengan estilos desde el primer pintado.
Genera un nuevo proyecto con host y micro app desde la línea de comandos.