Six free UI libraries, and every one of them will work. The real question is what each one asks of you before you ship. This is the shadcn/ui vs Radix vs Bootstrap decision, plus three more worth knowing: Pico CSS, Radix Themes and HeroUI (formerly NextUI).
Prices below come from The Design Tools’ own catalogue and the vendors’ own sites — all six are listed as free — so confirm on the official site before you commit a project to any of them.
The short version
All six are free. They differ on three axes: how much visual design you do yourself, whether you’re locked to React, and who maintains the code once it’s in your project.
| Library | Best for | Price (as listed) | Main drawback |
|---|---|---|---|
| shadcn/ui | Teams that want owned, editable components | Free | You maintain your own updates |
| Radix UI | Building a custom design system from scratch | Free | No styling — more work upfront |
| Radix Themes | Shipping fast with accessibility intact | Free | Opinionated look; React only |
| NextUI (HeroUI) | Modern product UI without visual design first | Free | Opinionated look; React only |
| Bootstrap | Mixed-skill teams and inherited projects | Free | Looks generic without customisation |
| Pico CSS | Prototypes, internal tools, docs | Free | Small component set; limited customisation |
Start with the constraint you can’t change
React or not? Radix UI, Radix Themes, HeroUI and shadcn/ui are all React-only. If your project is plain HTML or a different framework, that decision is already made: you’re looking at Bootstrap or Pico CSS.
How much design time do you have? This is where the six split cleanly into three camps.
Camp one: you do the visual design
Radix UI gives you unstyled React primitives. Our catalogue’s note on it is blunt: it solves the genuinely hard part — keyboard handling, focus management, ARIA — and leaves every visual decision to you. That’s the strength and the drawback. Budget more upfront work.
shadcn/ui sits in the same camp with a twist. Its components are built on Radix primitives and Tailwind, but you copy the code into your project rather than installing a dependency. You own and can edit every component, and there’s no dependency lock-in. The trade-off is written plainly in our listing: you maintain your own updates. When the upstream project ships changes, nothing flows to you automatically.
Camp two: ship something that already looks good
Radix Themes is the styled layer over Radix primitives — consistent design tokens, accessible underneath, free and open source. Its drawback is an opinionated visual style, and it’s React only.
HeroUI is the same pitch from a different direction: attractive defaults straight away, built on Tailwind, good dark mode support. Same drawbacks — opinionated, React only.
If you’re a product designer shipping a marketing site or dashboard without a dedicated visual design phase, either of these gets you to something presentable faster than raw Radix.
Camp three: familiarity over flair
Bootstrap‘s value, per our listing, is that almost every developer can pick it up immediately. Complete component set, free, very stable. The cost: sites look generic without customisation, and it’s heavier than utility-first CSS.
Pico CSS is the opposite bet — under 10KB minified, styles semantic HTML with almost no classes, dark mode included. Write clean markup and it looks reasonable. It’s explicitly not for distinctive brand work, and the component set is small.
Which one, then?
Pick shadcn/ui if you want full visual control and accept owning the maintenance. Pick Radix UI if you’re building a real design system and have the time. Pick Radix Themes or HeroUI if you need to ship now and can live with someone else’s aesthetic. Pick Bootstrap if your team is mixed-skill or you’re inheriting an existing codebase. Pick Pico CSS for prototypes, internal tools and documentation where design time isn’t the priority.
One honest note: our catalogue lists all six as free, but “free” means different things here. Radix and Pico cost you nothing but time. shadcn/ui costs you ongoing maintenance. Bootstrap costs you customisation work if you want it to not look like Bootstrap. Budget for the real cost, not the licence.
Sources
- Radix UI official site — establishes Radix UI as free, unstyled, accessible React primitives
- Radix Themes official site — establishes Radix Themes as the pre-styled layer over Radix primitives
- shadcn/ui official site — establishes the copy-paste ownership model
- HeroUI official site — establishes HeroUI as a Tailwind-based React component library
- Bootstrap official site — establishes Bootstrap as a free, stable CSS framework
- Pico CSS official site — establishes Pico CSS as a minimal class-less CSS framework
122 ready-to-use AI prompts — organised by discipline and category, each copyable in one click, free and no sign-up needed. Browse the prompt library →
