If you spent any time on React Twitter or LinkedIn lately, you saw three names everywhere: shadcn/ui , Radix , and Base UI . People talk about them like they compete with each other, but they don't really. Let me explain what each one actually is, and when you should reach for which. First, what is a "headless" UI library? Before we compare anything, you need this idea. A normal UI library like Bootstrap or Material UI gives you components that already look a certain way. You import a <Button> and it comes with colors, padding, hover effects, the full package. You can override the styles, but you are fighting the library. A headless library does the opposite. It gives you the behavior of a component (open and close, keyboard navigation, focus management, accessibility) without any styling at all. You bring your own CSS. You decide how it looks. Think of it like this: a headless library is the engine of a car. shadcn, Bootstrap, MUI are full cars. You can swap the engine, but the car already has paint.…