Headless core
Anatomy, state machines and accessibility logic live in a framework-agnostic core. Adapters only write attributes onto host elements; they never reimplement behavior.
Read the introduction
A fast, lightweight, carefully built headless UI library that runs on any framework.

Anatomy, state machines and accessibility logic live in a framework-agnostic core. Adapters only write attributes onto host elements; they never reimplement behavior.
Read the introduction
Vue components, React components and custom elements run the same state machine and the same connect. A cross-adapter conformance suite compares the normalized DOM frame by frame.
See the three ways
Every component has a machine-readable keyboard specification that doubles as the test denominator; a suite that misses one row fails. Scans run in real Chromium.
Read about the keyboard specs
Skins only select data-scope / data-part and state attributes, never frameworks or class names. Tokens are generated from DTCG sources as CSS variables; replacing the whole skin needs no JS change.
Read about tokens and theming
No library package has a third-party runtime dependency. Date arithmetic, overlay positioning, syntax highlighting, virtual scrolling, the Web Components reactive base class and streaming Markdown are all built in-house.
Install
SSE reading, protocol normalization, parts reduction and the conversation store live in a DOM-free core; rendering is left to the message feed, log, prompt input, code view and streaming Markdown.
Browse the components