Under Construction

We're actively working on new components and features. Stay tuned! Head over to our GitHub to see what's coming next.

Let’s build together — meet us on Discord.

Introduction

Rad UI is a headless, accessible, and performance focused React component system built for products that expect to live for years.

It is designed for teams building real design systems, scaling production applications, or shipping serious side projects that cannot afford fragile UI foundations.

Rad UI gives you control over structure, styling, and behavior while handling the hard parts for you: accessibility, composition, and predictable interactions.

This is not a starter kit.
It is UI infrastructure.


Why Rad UI?

Design System First

Rad UI is built for design systems, not demos.

Every component is unstyled by default, making it trivial to integrate with your tokens, spacing scales, typography, and theming strategy. Whether you are building a design system from scratch or standardizing an existing one, Rad UI adapts to your rules instead of imposing its own.

You keep ownership of your visual language. Rad UI stays out of the way.


Gradual, Intentional Adoption

Rad UI does not require a rewrite.

You can introduce it incrementally alongside existing components and styles. Adopt it one component at a time, modernize critical flows first, or replace legacy UI at your own pace.

This makes Rad UI practical for real world codebases, not just greenfield projects.


Accessibility Without Ceremony

Accessibility is not optional and it is not an afterthought.

Rad UI components ship with keyboard navigation, focus management, and correct ARIA behavior baked in. They are designed to meet WCAG requirements wherever possible without forcing you to memorize specs or reinvent interaction logic.

You get accessible behavior by default, not accessibility debt later.


Fully Composable Primitives

Rad UI is built from low level primitives, not rigid components.

Each piece exposes a clean, predictable API that can be composed into complex interfaces without hidden behavior or styling assumptions. You decide structure, layout, and presentation at every layer.

Inspired by the Radix philosophy and extended with better ergonomics, customization hooks, and modern styling support, Rad UI prioritizes flexibility without chaos.


Performance by Design

Rad UI is engineered to stay fast as your application grows.

Components minimize unnecessary DOM updates, reduce re-renders through careful state management, and avoid heavyweight abstractions. The goal is simple: predictable performance that does not degrade as complexity increases.


Developer Experience That Respects You

Rad UI is built by developers who have shipped and maintained large UIs.

Expect:

  • Clear and predictable APIs
  • First class TypeScript support
  • Consistent patterns across components
  • Documentation written for understanding, not marketing

You should spend your time building features, not decoding library behavior.


Styling Freedom, With an Escape Hatch

Rad UI does not force a styling system.

Use Tailwind, CSS Modules, SCSS, vanilla CSS, or anything else. Components ship without styles or resets, so they integrate cleanly into any stack without side effects.

For teams that want to move fast, Rad UI also provides default CSS and theming out of the box. When you are ready, you can detach components from the default styles and progressively adopt your own design system without friction.

This is intentional. Escape hatches are a feature.


Who is Rad UI for?

Rad UI is for developers who want control without chaos.

  • Design System Builders
    Build and enforce your own design language on top of solid, accessible primitives without fighting library opinions.

  • Product Teams
    Scale complex applications with predictable UI behavior, consistent interactions, and long term maintainability.

  • Solo Developers and Side Projects
    Ship polished interfaces quickly without compromising on accessibility, performance, or future flexibility.

Rad UI is built on proven design system principles