BlankUI copies components into your project, with a doc file next to each one and lint rules that keep agents on track.
npx blankui initnpx blankui add button dialog fieldinit doesstyles/blankui.css (tokens and themes) and imports it after Tailwind.lib/utils.ts with the cn() helper and a components.json.@blankui/eslint-plugin.AGENTS.md (between <!-- blankui:start --> markers, so your own content is kept) and a CLAUDE.md that points to it.React 19 and Tailwind CSS v4, in a Next.js or Vite project. BlankUI does not support React 18 or Tailwind v3.
Every component is also a shadcn registry item, so this works too:
npx shadcn add https://blank.vageshwar.dev/r/button.json
https://blank.vageshwar.dev/docs/<name>.md: the raw doc for one component.Stack, Inline, Grid and Container. Use them for all spacing between elements.
A clickable action. Supports variants, sizes, icon-only buttons, loading state and links.
A checkbox for a yes or no choice, or for picking several items from a list.
Wraps one form control with a label, help text and an error message, and wires up the accessibility attributes.
A single-line text input. Put it inside a Field for the label and errors.
A dropdown for picking one option from a list. Put it inside a Field for the label and errors.
A multi-line text input. Put it inside a Field for the label and errors.
A confirmation the user must answer, for destructive or important actions. Clicking outside does not close it.
A modal window for a focused task, like editing a record. Blocks the page until closed.
A small floating panel anchored to a button, for extra controls or details. Does not block the page.
A panel that slides in from an edge of the screen, for filters, settings, details or mobile navigation.
A short text hint shown on hover and keyboard focus. Includes its own provider.
A short message that appears for a few seconds after something happens, like "Saved". Built on sonner.
A bordered surface that groups related content, with header, content and footer parts.
A data table for rows of items with the same fields, like invoices or users.
Switch between views of related content in the same place, like Account and Billing settings.