Introduction

Interface components that move like real objects. A CLI copies them into a React or Next app. After that, they are yours.

What this is

A CLI and a registry. init writes tokens, cx, and a theme script. add writes a component and its CSS into your repo. Components come in sets, and each set shares one kind of motion:

What this is not

Not a kit of buttons and inputs. Every piece here is a moment: a pill that stretches, a menu that grows out of its button, a board that flips. Bring your own basics and put these where the interface should feel alive.

No dependencies either. No animation library, no Tailwind, no Radix. The motion is CSS springs, and React only measures and keeps state.

Works with

React 18 or 19. Next App Router or Pages. Vite. The CLI detects the framework and writes files where your app already keeps components. Most of them measure and animate in the browser, so they are client components.