Islas interactivas
Para lo que sí necesita un framework real — un dashboard, un carrito complejo — sin que el resto del sitio deje de ser HTML-first.
Marcar la isla
<div data-nexa-island="dashboard" data-nexa-strategy="visible">
<p>Cargando panel…</p>
</div>El servidor solo renderiza el fallback (los hijos del div, contenido real); el montaje ocurre 100% en el cliente.
El contrato de montaje
// src/islands/dashboard.island.ts
export default function mount(el, props) {
// @nexa/reactivity a mano, o un adaptador de Vue/Preact/etc.
return () => { /* cleanup opcional */ };
}Cualquier framework puede implementar esto: código escrito a mano con @nexa/reactivity, o un adaptador sobre Vue, Preact, lo que sea.
Sin reabrir la composición
// nexa.toml
[imports]
dashboard = "/vendor/dashboard-island.js"Rust nunca abre ni interpreta el módulo del specifier — para el compilador, un data-nexa-island es un Element más, igual que cualquier otro atributo.