Native underneath
Interactive wrappers contain real HTML controls, preserving forms, links, keyboard behavior, and browser APIs.
HTML first
Zenbu UI uses light-DOM Web Components to organize styling and behavior without hiding the native button, link, label, input, article, and section elements that already work.
Interactive wrappers contain real HTML controls, preserving forms, links, keyboard behavior, and browser APIs.
Application code can inspect, style, test, and progressively enhance every element without crossing a shadow boundary.
CSS custom properties provide the visual contract. Components remain dependency-free ES modules.
Native buttons and links with shared variants and loading state.
A visual container that leaves article semantics in your HTML.
Status and alert messages with optional dismissal.
Labels, controls, help text, and validity wiring.
A tiny layout primitive driven by HTML attributes.
A bounded, scoped, bottom-right notification stack.
Foundations
Import one CSS file and override any --zen-* property at the application boundary.
--zen-space-1: 0.25rem
--zen-space-2: 0.5rem
--zen-space-4: 1rem
--zen-space-6: 2rem
--zen-radius-sm
--zen-radius-md
--zen-radius-lg
--zen-shadow-sm / md
Component
Wrap a native button or a. The browser keeps responsibility for forms and navigation.
Component
The wrapper owns presentation. You choose the native sectioning element and heading level.
All worker queues are healthy and the last deployment passed.
Add the attribute when the whole card leads somewhere.
Component
Tone selects status semantics and color. Add dismissible for a generated native close button.
Info: The new bundle is ready to inspect.
Success: All tests passed.
Warning: One worker slot remains.
Error: Deployment failed and was rolled back.
Component
Write a label and native control. The component supplies IDs, label association, help text, and invalid state.
Component
A scoped bottom-right stack with bounded records, deduplication, announcements, actions, and paused finite timers.
Component
A flex layout primitive with readable direction and gap attributes.