Floating tooltipOne shared hint that follows the pointer and slides between triggers.
Parts you stop writing twice
Reuse is a small set of interface parts: a lightbox, a carousel, tooltips, loaders and a few more. Each one is a plain browser module with a thin React wrapper, so the same part runs in React, Vue, Svelte, a WordPress theme or a static page.
It is also a set of rules every part follows: native browser behavior first, styles scoped to reuse- classes, full cleanup on destroy, keyboard and reduced motion covered. Each library comes with a guide your coding agent reads before it writes code, so what it builds keeps those rules on any stack.
The small ones
Each card runs the real module. Point along the toolbar, move through the menu, press and hold.
Moving highlightOne background that slides to the row under the pointer, the focus or the selection.
Release early to cancel
Hold to confirmA button that acts only after a full press. Let go early and nothing happens.
LoadersA few dots that change shape while an answer is on its way.
Carousel
Drag it with a mouse or scroll it with a trackpad. Every image opens in the lightbox.
The rules every part follows
They are why a part written once keeps working in the next project, whatever it runs on.
Any stack. A browser module binds to the markup you already have. React gets a hook; Vue, Svelte and plain pages call the module directly.
Clean exits. destroy() removes every listener and puts back every style it touched, so a part can come and go with a route.
Scoped styles. Classes start with reuse- and values live in --reuse- custom properties. Nothing reaches the rest of your page.
Keyboard first. Native dialogs, buttons and focus order. Every part works without a pointer and with a screen reader.
Calm motion. Springs that keep their speed when you interrupt them, and no motion at all when the system asks for less.
Written for agents. Each library ships a guide with the markup it expects, its options and the checks to run, so your agent gets it right the first time.