Headless UI
Headless UI is a free, open source library of completely unstyled, fully accessible UI components, built by Tailwind Labs (now owned by Shopify) and designed to pair naturally with Tailwind CSS. It covers common interactive patterns like menus, dialogs, listboxes and switches for both React and Vue, leaving all visual styling to the developer.
Facts checked on against the sources listed at the end of this page.
- Pricing
- Open sourceFree plan: Yes, Headless UI is completely free
- Open source
- YesMIT
- GitHub stars
- 28,767
- npm downloads a week
- 8.8Mup 11% on the week before
- Latest release
- @headlessui/re…6 months ago
A good fit for
- Tailwind CSS projects that want accessible interactive components without a large dependency
- Teams that want a smaller, focused set of unstyled components rather than a very large primitives library
- React or Vue projects needing common patterns like dropdowns, dialogs and switches
- Developers who want accessibility handled without writing their own keyboard and ARIA logic
Not a good fit for
- Projects that need a very large, comprehensive set of component primitives, where a bigger library like Radix UI may cover more patterns
- Frameworks outside React and Vue, since Headless UI only supports those two
- Teams that want prebuilt visual styling rather than a completely unstyled starting point
Headless UI pricing
Headless UI is completely free and open source under the MIT license.
Prices in USD, checked on 27 September 2026. Current prices on headlessui.com.
Main features
- Unstyled components
- No default visual styling; you apply your own CSS or utility classes.
- Accessible by default
- Keyboard navigation and ARIA attributes handled for common interactive patterns.
- React and Vue support
- Separate packages for React and Vue projects.
- Tailwind-friendly
- Designed to pair naturally with Tailwind CSS, though not required.
- Focused component set
- Covers commonly needed patterns like menus, dialogs, listboxes and switches.
About Headless UI
Headless UI provides unstyled, fully accessible component behavior for common UI patterns such as dropdown menus, dialogs, listboxes, switches and disclosure panels, handling keyboard interactions and ARIA attributes so you only need to supply the visual styling.
It's built by the team behind Tailwind CSS and designed to work especially well alongside it, though it doesn't require Tailwind and can be styled with any CSS approach.
Unlike larger primitive libraries that cover dozens of components, Headless UI focuses on a smaller, curated set of commonly needed interactive patterns, making it a lighter-weight option when you don't need a very large component surface.
- Made by
- Tailwind Labs (Shopify)
- Free plan
- Yes, Headless UI is completely free
- Available on
- React, Vue
Usage and activity
Weekly npm downloads of @headlessui/react, last 12 months.
Recent releases
- @headlessui/[email protected]6 months ago
- @headlessui/[email protected]1 year ago
- @headlessui/[email protected]1 year ago
- @headlessui/[email protected]1 year ago
- @headlessui/[email protected]1 year ago
Headless UI alternatives
Headless UI compared
Headless UIvsshadcn/ui
Headless UI is a small, focused set of unstyled, accessible components from the Tailwind CSS team, installed as a normal npm package for React or Vue.
Headless UIvsRadix UI
Headless UI and Radix UI are both free, MIT-licensed libraries of unstyled, accessible interactive components that leave all visual styling to you.
Questions about Headless UI
Is Headless UI free?
Yes, it's completely free and open source under the MIT license.
Does Headless UI require Tailwind CSS?
No, though it's built by the Tailwind CSS team and designed to pair well with it, you can style Headless UI components with any CSS approach.
What frameworks does Headless UI support?
React and Vue, each with its own package.
How is Headless UI different from Radix UI?
Both are unstyled, accessible component libraries, but Headless UI covers a smaller, more focused set of common patterns, while Radix UI offers a larger range of primitives.
Sources and links
Work on Headless UI? Claim this listing. Something wrong or out of date? Suggest a correction. Stats come from the public GitHub and npm APIs and update every day.
