Introduction
glasscn
Glassmorphic components for shadcn — frosted surfaces over a living aurora, built on Radix and Tailwind v4, installed as source.
glasscn is a shadcn registry. You don’t install a package: the shadcn CLI copies each component into your project, where it’s yours to read and change. Components keep shadcn’s APIs where one exists, so @/components/ui/button becomes @/components/glass/button and nothing else changes.
Everything visual is a CSS variable — the frost, the rim, the blur and saturation, the aurora’s three colours — set by one foundation item and a palette theme. Start with Installation, then make it yours in Theming.
Surfaces
Aurora
The living ground: three palette blobs drifting over the base colour. Pure CSS, reduced-motion aware.
Glass
A frosted pane — the base every surface is made from. Intensity, tint and elevation variants; asChild.
Card
shadcn's Card API on glass: header, title, description, action, content, footer.
Theme scope
Re-theme a subtree at runtime: a different palette, material, shape or scheme for one card, section or preview.
Typography
Controls
Button
shadcn's Button with glass, tinted and secondary variants, capsule or rounded, squash on press.
Badge
Small capsule labels: solid, tinted, glass, secondary, outline, destructive.
Input
A filled field for glass: soft fill, accent caret and focus ring.
Textarea
A filled, auto-growing text area for glass.
Label
An accessible label.
Switch
The iOS switch: capsule track fills with the accent, white knob springs across.
Checkbox
shadcn's Checkbox on glass: a soft box that fills with the accent, with an indeterminate dash.
Segmented control
The iOS segmented control: one raised thumb slides to the chosen segment; always has a selection.
Tabs
Tabs with a sliding pill (glass capsule, plain) or a sliding underline.
Slider
A soft track, accent range and white glass knobs. Ranges supported.
Progress
A capsule bar filling from the second chart colour into the accent.
Kbd
Keycaps on glass, singly or grouped.
Separator
A hairline that reads on glass.
Avatar
shadcn's Avatar on glass: a round photo with a hairline rim, initials on a soft fill, and overlapping groups.
Overlays
Dialog
A strong-glass modal over a dimmed, softened page.
Sheet
A floating glass panel that slides in from any edge, inset like an iPad sheet.
Popover
Floating glass content anchored to a trigger.
Tooltip
A small glass capsule on hover and focus.
Dropdown menu
A glass menu: items, checkbox and radio items, labels, shortcuts, submenus.
Toaster
Sonner toasts dressed in glass.
Navigation
Data
Activity rings
Concentric Activity-style rings that sweep in and lap past 100%. Server-component safe.
Progress ring
One ring that closes around its content — a goal, a countdown, a seal.
Sparkline
A smooth measure over time that draws itself, with a soft area and the latest point lit.
Stat
A figure on a glass tile: icon, value, label, trend.
Bar list
Ranked horizontal bars with the label inside and the value at the end — top habits, sources, pages.
Gauge
A three-quarter meter with an optional target tick and the figure in its bowl. Server-component safe.
Tracker
A row of status blocks — uptime, or a habit's last 30 days.
Category bar
A range split into coloured bands with a marker — a readiness score, a budget.
Heatmap
Days in week columns coloured by intensity — a contribution graph with month and weekday labels and a legend.
Chart
The chart host: TanStack Charts in a container that maps glass tokens — series colours from --chart-*, a glass-strong tooltip, inherited type — plus an HTML legend and chartColor().
Area chart
Volume over time: gradient areas under a line per series, optionally stacked, with a grouped glass tooltip.
Bar chart
Amounts per category, grouped or stacked, vertical or horizontal, with theme-rounded bar ends.
Line chart
Measures over time, one smooth line per series, with a grouped glass tooltip and a crosshair.
Donut chart
Parts of a whole as a ring of rounded slices, with content in the hole and a legend.
Table
shadcn's Table for glass: hairline rows, fill on hover and selection, muted headers, density-aware cells.
Data table
A sortable, searchable, paginated table with row selection — TanStack Table v9 on the glass table.
Chat
Blocks
Dashboardblock
Activity rings, stat tiles, a ranged sparkline and a 39-week heatmap.
Analyticsblock
Stacked active minutes over a range, the training mix as a donut, a recovery gauge, top habits and a sortable table of recent sessions.
Settingsblock
iOS Settings in glass: grouped rows, icon tiles, a switch, a segmented control and a slider.
Sign inblock
A strong-glass sign-in card with email, password and a passkey option.
Chatblock
A conversation on glass: grouped turns with avatars, a read receipt, typing that resolves into a reply, quick replies and a floating composer.