Components

Live components

Every component in the Suprnova Live component library, running for real. Each preview is a Live island on this server: what you type goes to Rust and comes back as HTML, and the code beside it is the code that rendered it.

The previews run in frames. suprnova.app is a Vue 3.5 application built on the Pulsar starter kit, and a Live island needs a server-rendered page of its own, so each example is a separate Live page loaded in an iframe. An open list or popover therefore stays inside its frame; in a Live page of your own application it opens over the page.

Nothing you enter is kept. A preview binds to your own session on its first action, so no other visitor sees it. This site accepts no uploads: the upload and file input pages show those widgets without sending anything.

Installation

Components install into an application with the suprnova CLI, one directory each under templates/suprnova-ui/: the Askama macro view, the stylesheet, the script when the component has one, and the manifest that names them.

Opt a document into the token and base stylesheets with LiveBootstrapOptions::esm().with_suprnova_ui(), serve the vendored files with try_live_ui_assets(), and import the macros in your views. The Live chapter of the manual covers each step.

bash
suprnova live:add field
suprnova live:add input
suprnova live:add button

Theming

Every visual value is a --sn- custom property with light and dark values. Override the tokens on :root to retheme an application. The theme bar re-themes these previews the same way, and Copy theme gives you the block for your choice.

An application that already uses Tailwind CSS 4 can speak in the same tokens through the library's @theme preset:

css
@import "tailwindcss";
@import "./suprnova-ui.tailwind.css";
suprnova-ui.tailwind.css

Forms