Skip to main content
shadcn/ui is the base component library for every vly project. It’s not a typical npm library — instead, the components are copied into your project (components/ui/), so you own and edit them freely.

What’s included

50+ components covering most UI needs:

Where they live

Every component is a real file you can read, edit, or replace.

Customizing a component

Open the file. Edit the JSX, the variants, or the styles. Changes apply immediately across every consumer.
components/ui/button.tsx
Use the new variant: <Button variant="brand">Click me</Button>.

Adding new components

Two paths:
“Add the Combobox component from shadcn/ui.” vly fetches it and adds it to components/ui/.

Tips

shadcn components are editable, not frozen. When updating from upstream, the CLI shows you a diff — accept what you want, keep your customizations.
Wrap, don’t replace. If you need a “branded” button, add a variant rather than building a new <BrandedButton /> component. Easier to evolve.

Components panel

Visual browser for the library.

Themes

Token-level theming.

Design systems

The bigger picture.
Last modified on April 18, 2026