BRUT/UI
A configurable neo-brutalist component registry built on shadcn, Base UI, React, Next.js, TypeScript, and Tailwind CSS v4.
· ·
What it includes
- Installable shadcn-compatible UI components
- Paper, Signal, and Sky flavours
- Soft, Solid, and Loud brutalism strengths
- Sharp, Cut, and Chunky radius modes
- Accessible Base UI behavior and component APIs
- Component previews, theme documentation, and composed block showcases
The registry source of truth lives in registry/brutalist/. Generated registry items are written to public/r/.
Installation
Add the BRUT/UI namespace to your project's components.json:
Then install the base theme and any components you need:
Development
Open to browse the site. Local registry items are available at URLs such as http://localhost:3000/r/button.json.
Validation
Theme configuration
BRUT/UI keeps shadcn's semantic color variables and adds project-wide brutalist tokens. Installing the theme gives you Paper + Soft + Cut by default, so no root attributes are required for the default appearance.
To select a different combination, set any of the public theme attributes on the document root:
Available values:
data-brut-palette:paper,signal, orskydata-brut-strength:soft,solid, orlouddata-brut-radius:sharp,cut, orchunky
Omit an attribute to keep its default value: Paper, Soft, or Cut respectively.
See the /themes page for the complete installed-token reference and usage guidelines.
Repository
BRUT/UI is maintained by at .