Headless
React hooks that handle logic and accessibility. You bring your own markup and styles.
Overview#
Headless mode exposes each component as a hook — like useDialog, useSelect, or useAutoComplete. Hooks return props you spread onto your own elements. You get state management, keyboard interactions, focus handling, and ARIA wiring. You write the JSX and CSS.
Use headless mode when you want maximum control over markup and styling, or when you're building a custom component library on top of our logic.
What you get#
- 70+ hooks covering every interaction pattern
- Zero opinion on markup or styling
- Full TypeScript inference on returned props
- The foundation for our Styled, Tailwind, and Primitive layers
Next steps#
Browse the hooks in the sidebar or check Getting Started for setup.