38 components, one page

Components

Every component, live and interactive. Copy the install command, or grab the source.

Layout4 components

Layout

Stack, Row, Grid, Shell, Sidebar, Spacer — flex and grid without inline styles.

npx shadcn@latest add https://pouf.worksonmy.dev/r/layout.json
default
First lineSecond lineThird line
tight-gap
Tightstack
loose-gap
Loosestack
spacer
Pinned left
Pinned right
default
OneTwoThree
between
LeftRight
center
Centered
top-align
Label
Line oneLine two
cols-2
A
B
cols-3
A
B
C
cols-4
A
B
C
D
default
Shell content area.
default

Separator

A hairline divider.

npx shadcn@latest add https://pouf.worksonmy.dev/r/separator.json
Above the line.
Below the line.

ScrollArea

A scroll container with a styled bar.

npx shadcn@latest add https://pouf.worksonmy.dev/r/scroll-area.json
Line 1: some scrollable content inside the ScrollArea primitive.Line 2: some scrollable content inside the ScrollArea primitive.Line 3: some scrollable content inside the ScrollArea primitive.Line 4: some scrollable content inside the ScrollArea primitive.Line 5: some scrollable content inside the ScrollArea primitive.Line 6: some scrollable content inside the ScrollArea primitive.Line 7: some scrollable content inside the ScrollArea primitive.Line 8: some scrollable content inside the ScrollArea primitive.

AspectRatio

A framed, ratio-locked box.

npx shadcn@latest add https://pouf.worksonmy.dev/r/aspect-ratio.json
wide
16:9 container
square
1:1 container
Typography1 component

Text & Headings

Heading, Text, Highlight, Eyebrow — the type scale.

npx shadcn@latest add https://pouf.worksonmy.dev/r/text.json
levels

Level one

Level two

Level three

highlight

soft & puffy

eyebrow
Section label

Section title

default
Regular body copy.
sizes
Medium textSmall text
muted
Muted supporting copy.
numeric
+2.41%
mono
const value = 42
truncate
A long line of text that should truncate with an ellipsis
Surfaces4 components

Card

Card and RowCard — every surface a cushion.

npx shadcn@latest add https://pouf.worksonmy.dev/r/surface.json
default
Default card — 32px padding, full radius.
tight
Tight card — 16px padding.
flush
Flush card — no padding, clipped.
default
AppleTrending
+2.41%
interactive
selected

Stat & Metric

Headline figures on their own cushion.

npx shadcn@latest add https://pouf.worksonmy.dev/r/readout.json
default
Users1,284
Active312
Revenue+$4,290
Churn−0.4%
default
Projects0
Completion
Score
Balance$0.00
PlanFree

Blob, Badge, Dot, Figure

Icon tiles, flat labels, status dots, framed images.

npx shadcn@latest add https://pouf.worksonmy.dev/r/media.json
tones
sizes
labelled
tones
ShippedBlockedAt riskDraft
tones
Connected
Disconnected
Degraded
default
A worked example screenshot

Avatar

A puffy avatar with image, initials, or icon fallback.

npx shadcn@latest add https://pouf.worksonmy.dev/r/avatar.json
fallback
MBJD
icon
sizes
SMMDLG
Forms8 components

Button

The primary control. Depth is the affordance.

npx shadcn@latest add https://pouf.worksonmy.dev/r/button.json
solid-md
tones
sizes
quiet
block
disabled
loading

Input & Textarea

Field, Input, Textarea — recessed cushions for text entry.

npx shadcn@latest add https://pouf.worksonmy.dev/r/input.json
basic
placeholder
invalid
Must be a number
disabled
textarea

NumberInput

A spinbutton capsule with decimal-safe stepping.

npx shadcn@latest add https://pouf.worksonmy.dev/r/number-input.json
default
Steps by 0.1; floor at 0.
at-min
at-max
invalid
Must be a number
disabled

Checkbox

A cushioned checkbox with a draw-in check.

npx shadcn@latest add https://pouf.worksonmy.dev/r/checkbox.json
unchecked
checked
indeterminate
disabled

RadioGroup

Single-select, sized to match the checkbox.

npx shadcn@latest add https://pouf.worksonmy.dev/r/radio-group.json
default
disabled

Slider

A bead of clay lying in its channel.

npx shadcn@latest add https://pouf.worksonmy.dev/r/slider.json
single
Volume: 40%
range
Price range: 20–80%
disabled

Segmented

A pressed-in segment marks selection with depth, not colour.

npx shadcn@latest add https://pouf.worksonmy.dev/r/segmented.json
default
Showing grid
tone

ToggleGroup

Multi-select toggles that press in when on.

npx shadcn@latest add https://pouf.worksonmy.dev/r/toggle.json
default
multi-selected
none-selected
Overlays5 components

Select, Switch, Dialog, Confirm, Tooltip, Combobox

The Radix-backed controls, skinned in clay.

npx shadcn@latest add https://pouf.worksonmy.dev/r/controls.json
default
placeholder
disabled
on
Notifications
off
Notifications
disabled
Busy switch
default
no-options
trigger
disabled-child
trigger
trigger

ContextMenu

A right-click menu, same clay skin.

npx shadcn@latest add https://pouf.worksonmy.dev/r/menu.json
Right-click anywhere in this area

HoverCard

A card that rises on hover.

npx shadcn@latest add https://pouf.worksonmy.dev/r/hover-card.json
Hover for details

Sheet

A side panel that slides in from the edge.

npx shadcn@latest add https://pouf.worksonmy.dev/r/sheet.json
Navigation6 components

Tabs, Accordion, Collapsible

Panels that switch and reveal.

npx shadcn@latest add https://pouf.worksonmy.dev/r/disclosure.json
default
Active project content goes here.
second-selected
Archived history.
default

expanded

Saves every 30 seconds. Keeps the last 10 versions.

closed
open

BottomNav

A thumb-reachable mobile tab bar.

npx shadcn@latest add https://pouf.worksonmy.dev/r/bottom-nav.json
default
on-secondary-page

Pagination

Page-by-page navigation.

npx shadcn@latest add https://pouf.worksonmy.dev/r/pagination.json
middle
2 / 5
first-page
1 / 5
last-page
5 / 5
Sections3 components

CTA

A call-to-action banner — the one loud thing.

npx shadcn@latest add https://pouf.worksonmy.dev/r/cta.json
default

Ready to get puffy?

One command drops a component into your project.

tones

Start your free trial

Feedback5 components

Status, Freshness, ModeBanner

Liveness signals and the environment banner.

npx shadcn@latest add https://pouf.worksonmy.dev/r/status.json
no-timestamp
Service offline
fresh
Sync enabled0s ago
stale
Sync connected — unconfirmed3h ago
healthy
Renders nothing while the data is fresh:
stale
No update for 3h
error
Update failed — showing last known
draft
DRAFT — only you can see this
live
LIVE — changes are public

Empty, Skeleton, ErrorNote

Designed empty, loading, and error states.

npx shadcn@latest add https://pouf.worksonmy.dev/r/feedback.json
default
Nothing here yetAdd your first item to get started.
no-description
Nothing here yet
row
text
card
default

Toasts

Pushed alerts with a puffy fill and a raised icon.

npx shadcn@latest add https://pouf.worksonmy.dev/r/toaster.json

AlertBell

The record behind the toasts.

npx shadcn@latest add https://pouf.worksonmy.dev/r/alert-bell.json
trigger
disconnected

Progress

Determinate and indeterminate bars.

npx shadcn@latest add https://pouf.worksonmy.dev/r/progress.json
default
40%
85%
zero
complete
Data2 components

Table

Rows of data with optional row actions.

npx shadcn@latest add https://pouf.worksonmy.dev/r/table.json
default
FruitKindQtyTotal
AppleFresh0.4+$31.20
BananaDried2.1−$8.05
CherryFresh5.0+$12.40
empty
FruitKindQtyTotal
No data.
clickable-rows
FruitKindQtyTotal
AppleFresh0.4+$31.20
BananaDried2.1−$8.05
CherryFresh5.0+$12.40

Charts

Area, Bar, Line, and Pie — Recharts, themed.

npx shadcn@latest add https://pouf.worksonmy.dev/r/charts.json
default
stacked
default
tone-key
default
donut
pie-labelled