🔍 Still Curious?
There's a lot more to see and do on this site
Framework-agnostic UI primitives that work everywhereΓÇöfrom simple forms to complex data tables
Pure UI components that work anywhere in your application. Build once, use everywhereΓÇöin forms, data tables, navigation, or dialogs.
Built on Radix UI with WCAG 2.1 compliance. ARIA attributes, keyboard navigation, and screen reader support work out of the box.
Class Variance Authority provides type-safe styling with autocomplete. Define variants once, get compile-time validation everywhere.
Components tied to specific frameworks prevent code reuse across different contexts. You need the same button working everywhere.
Each developer implements ARIA attributes differently, creating patchy screen reader support and keyboard navigation.
Without a unified variant system, the same component looks different across pages, hurting user experience.
Building buttons, inputs, and selects from scratch for every new feature wastes valuable development time.
JavaScript libraries with TypeScript added later have incomplete or incorrect types that catch errors too late.
Traditional UI libraries require complex configuration just to change basic styling or add custom variants.
Every component follows WCAG 2.1 guidelines. ARIA attributes, keyboard navigation, screen reader support, and focus management work out of the box.
Built with class-variance-authority (CVA) and CSS custom properties. Components share a unified design system while remaining fully customizable.
Pure UI primitives with zero form logic. Use them in forms, data tables, navigation, dialogsΓÇöanywhere you need consistent, accessible controls.
100% TypeScript implementation with full type inference. Catch errors at compile time, get autocomplete everywhere, enjoy excellent DX.
Multiple size, style, and state variants built-in. Default, error, success, warning states. Small, medium, large sizes. All configurable via props.
Buttons show loading spinners automatically. Async actions get clear visual feedback. Users know when operations are in progress.
Unstyled, accessible primitives providing keyboard navigation, focus management, ARIA attributes, and screen reader support automatically.
Type-safe variant composition. Define variants once, get autocomplete everywhere. TypeScript ensures only valid combinations compile.
100% TypeScript native implementation with full type inference and zero runtime overhead from type checking.
Lightweight React primitives with minimal abstraction. Components are pure UI with no business logic coupling.
Utility-first styling with CSS custom properties for theme-aware components. Change colors site-wide via CSS variables.
Comprehensive accessibility compliance ensuring screen reader support, keyboard navigation, and proper focus management.
| Aspect | Before | After |
|---|---|---|
| Accessibility | Optional or incomplete | WCAG 2.1 compliant by defaultFull compliance |
| Framework Coupling | Tied to specific use cases | Pure UI primitives, use anywhereZero lock-in |
| Type Safety | JavaScript with types added | 100% TypeScript nativeComplete safety |
| Customization | Complex configuration | Simple className + styleOverride90% simpler |
| Loading States | Manual implementation | Built into all buttonsZero effort |
| Error Handling | Inconsistent patterns | Unified error/helper text systemConsistent UX |
Accelerate development with production-ready components and excellent developer experience.
Provide consistent, accessible experiences that work for everyone on every device.
Reduce costs, ensure compliance, and accelerate time-to-market with reusable components.
Zero business logic. Components render UI, handle interactions, and emit events. Form validation, data fetching, and business rules live in specialized wrappers.
Built on Radix UI's unstyled, accessible primitives. Keyboard navigation, focus management, ARIA attributes, and screen reader support work automatically.
Class Variance Authority provides type-safe variant composition. Define variants once, get autocomplete everywhere. TypeScript ensures only valid combinations compile.
Theme-aware styling via CSS variables defined in app.css. Change colors, spacing, or typography site-wide by updating properties. No component recompilation needed.
Small, focused components that compose into larger patterns. Build form fields from Input + Label. Create button groups from multiple ActionButtons.
TypeScript types exist only at compile time. No runtime type checking overhead. Components are lightweight React primitives with minimal abstraction.
Works seamlessly with your existing architecture and specialized systems.
There's a lot more to see and do on this site
Have a project in mind? I'd love to hear about it.