Framework Adapters
How NexusStratum bridges framework-agnostic components to Leptos and Dioxus.
The Adapter Pattern
NexusStratum's primitives and styled components produce RenderOutput — a framework-agnostic description of what to render (tag, classes, ARIA attributes, children). Framework adapters translate this into each framework's native rendering model.
Architecture
stratum-primitives (Component trait)
|
+-- stratum-leptos (bridges to Leptos signals + view!)
|
+-- stratum-dioxus (bridges to Dioxus signals + rsx!)What Adapters Do
- Event conversion — DOM events (click, keydown) to
ComponentEvent - Render translation —
RenderOutputto HTML attribute pairs - Context providers —
ThemeContext,ToasterContext - Type re-exports — all component types accessible from one import
Supported Frameworks
| Framework | Crate | Adapter |
|---|---|---|
| Leptos 0.8+ | stratum-leptos | StratumAdapter |
| Dioxus 0.6+ | stratum-dioxus | DioxusAdapter |
Adding a New Framework
To support a new Rust frontend framework (e.g., Sycamore, Yew), create a new adapter crate that:
- Converts the framework's events to
ComponentEvent - Translates
RenderOutputto the framework's view model - Provides context providers for theming
- Re-exports all component types