V-/Srcv0.1.0beta

Components

19 surfaces, one optic.Install the registry once, then add any surface with the shadcn CLI — each refracts for real in Chromium; Safari and Firefox get clear frost. Every tile links to full docs: props, optics, accessibility, and the source you'll own.

// installation

Installation

Components are copied into your project through the shadcn CLI. The only npm package is vsrc — the optics engine.

// 1 · components.json
{
  "registries": {
    "@vsrc": "https://vsrc-weld.vercel.app/r/{name}.json"
  }
}
// 2 · add a component
npx shadcn add @vsrc/button
// 3 · use it
import { Button } from "@/components/ui/button"

<Button variant="primary">Ship it</Button>
<Button>Clear glass</Button>
<Button variant="ghost">Quiet</Button>

Your components.json must use a Radix-based style such as new-york. The Base UI base-nova style rewrites asChild composition during install and breaks these components.

// playground

Playground

Pick a surface and drop it over moving type. The middle stays still; the rim bends whatever drifts past.

// glass-surface

Everything bends at the rim.

Content stays legible in the middle; the edge does the optics.

// glass-surface

Glass Surface

docs →

The refraction primitive every other component builds on.

// install
npx shadcn add @vsrc/glass-surface

// button

Button

docs →

Clear glass by default, one red primary per view, ghost for quiet chrome.

// install
npx shadcn add @vsrc/button

// card

A glass panel with the usual card anatomy.

// install
npx shadcn add @vsrc/card

// input

A glass field. The backdrop stays legible behind your text.

// install
npx shadcn add @vsrc/input

// select

Select

docs →

A glass trigger and a floating glass panel, Radix typeahead intact.

// install
npx shadcn add @vsrc/select

// switch

Switch

docs →

Glass track, cream thumb, red when checked.

// install
npx shadcn add @vsrc/switch

// slider

Slider

docs →

A glass lens for a thumb; the rim bends the track as it slides. The switch, inverted.

// install
npx shadcn add @vsrc/slider

// tabs

A glass pill list with quiet triggers.

// install
npx shadcn add @vsrc/tabs

// tooltip

Tooltip

docs →

A small glass pill on hover or focus.

// install
npx shadcn add @vsrc/tooltip

// popover

Popover

docs →

Anchored glass panel for small forms and detail.

// install
npx shadcn add @vsrc/popover

// hover-card

Hover Card

docs →

A glass preview that opens on hover or focus.

// install
npx shadcn add @vsrc/hover-card

// context-menu

Context Menu

docs →

A glass menu anchored to the pointer on right-click.

// install
npx shadcn add @vsrc/context-menu

// dialog

Dialog

docs →

A modal glass pane over a dimmed page.

// install
npx shadcn add @vsrc/dialog

// alert-dialog

Alert Dialog

docs →

A modal that forces a choice: cancel, or one confirming action.

// install
npx shadcn add @vsrc/alert-dialog

// sheet

A side panel of glass; softer optics keep big maps cheap.

// install
npx shadcn add @vsrc/sheet

// command

Command

docs →

cmdk in a glass panel. Press ⌘K anywhere on this site — the palette is the same registry component.

// install
npx shadcn add @vsrc/command

// toast

Glass-styled sonner. Toasts move constantly, so they skip the displacement engine by design.

// install
npx shadcn add @vsrc/toast

// dock

The signature piece — the brand board's docked nav, in glass.

// install
npx shadcn add @vsrc/dock