Skip to main content

Atoms (components/atoms/)

Primitive UI elements — the smallest reusable building blocks. Built on Radix UI primitives and styled with Tailwind CSS + class-variance-authority.

Components

Design Conventions

  • CVA variants — Use cva() to define visual variants (size, color, state). Don’t hardcode conditional classes.
  • Radix primitives — Use Radix for accessibility (keyboard nav, ARIA, focus management). Don’t reimplement.
  • forwardRef — All atoms use React.forwardRef for composability.
  • Tailwind-only — No CSS files per component. All styles via Tailwind utility classes.
  • Barrel exportindex.ts re-exports all atoms for clean imports: import { Button } from '@/components/atoms'.