Building Vue applications usually means working with a UI library. You pick one like PrimeVue, install it, and start building. Everything feels good at first. You get beautiful components out of the box, import them, and move quickly.
Then reality hits. Your client wants the button to behave differently. Your design system needs a sidebar with custom spacing. A component you need simply isn’t there. So you start overriding styles, wrapping components, pulling in a second library because the first one doesn’t cover everything. Before long, the codebase is a mess.
This is the problem shadcn-vue solves.
