Components with the wiring done.

139 React components with keyboard support, reduced-motion fallbacks and real states. Add one with the shadcn CLI and the source lands in your repo, yours to edit.

npx shadcn@latest registry add @netter=https://netter-ui-app-la9g10-924acb-161-153-45-177.sslip.io/r/{name}.json
Try it out
Loading specimen…

Aperture Reveal Card

Inspect source

Six parts from the bench

Each one opens in the explorer with live props, the full source and its install command.

Six collections, one install command

Each collection keeps its own palette and sample content, so pieces from one set read as a single site. The backgrounds below are Netter components too.

Install with shadcn

Three steps, the same in every React project with Tailwind v4. Need the namespace setup or another example? Read the installation guide.

~/your-app
  1. Set up shadcn once per project. Skip this if you already have a components.json.

    npx shadcn@latest init
  2. Add the component. The CLI installs its npm dependencies too.

    npx shadcn@latest add https://netter-ui-app-la9g10-924acb-161-153-45-177.sslip.io/r/async-state-button.json

    Writes components/netter/async-state-button.tsx

  3. Import it like any file you wrote yourself.

    import { AsyncStateButton } from "@/components/netter/async-state-button";

An open registry you can read before you install

Every component is a JSON file the shadcn CLI already understands. Open one in the browser, check its files and dependencies, then let the CLI copy it into your project.

Catalog
https://netter-ui-app-la9g10-924acb-161-153-45-177.sslip.io/r/registry.json
Item template
https://netter-ui-app-la9g10-924acb-161-153-45-177.sslip.io/r/{name}.json
Example item
https://netter-ui-app-la9g10-924acb-161-153-45-177.sslip.io/r/async-state-button.json
Source on GitLab

Your next component is already on the bench.

Drawn with aurora-mesh-background