Get started

1

Register the @dreams-ui registry

Add this to your project's components.json (create one first with npx shadcn init if you don't have one). Use the new-york or default style - dreams-ui components use Radix's asChild polymorphism, and the newer base-*/radix-* styles rewrite that into an incompatible render prop during install.

{
  "registries": {
    "@dreams-ui": "https://ui.somnia.network/r/{name}.json"
  }
}
2

Install a component

Every component is namespaced under @dreams-ui/. Transitive dependencies (other components, hooks, the theme) are resolved automatically.

npx shadcn add @dreams-ui/button
3

Import the theme

The first install writes app/dreams-ui-theme.css to your project. Add one import line to your own global stylesheet - the CLI can't merge it into an existing file automatically.

@import "./dreams-ui-theme.css";
4

Working with AI agents

An agent-readable index of this registry lives at /llms.txt. For coding agents, install the Dreams UI skill - it documents usage rules, gotchas, and the full catalog, and lands in .claude/skills/dreams-ui/ where agent harnesses auto-discover it. For whole-project conventions (structure, code style), agents should also read /company-claude.md:

npx shadcn add @dreams-ui/skill

Components (56)

accordion

Expandable accordion built on Radix Accordion.

alert

Callout alert with severity variants, icon, title, and description.

badge

Small label badge with color variants and optional icons.

blob-hero

Hero section with animated blob background.

blobs

Animated gradient blob background (simplex-noise driven).

border-trail

Animated light-trail border effect for highlighting a container.

breadcrumb

Breadcrumb navigation trail.

button

Action button with variants (primary/secondary/ghost/brand/semantic), sizes, icons, and asChild polymorphism.

card

Surface card with header, title, description, content, and footer parts.

carousel

Swipeable carousel built on Embla with prev/next controls.

charts

Recharts wrapper themed with Dreams UI tokens (container, tooltip, legend).

checkbox

Checkbox with label and error state, built on Radix Checkbox.

code-block

Syntax-highlighted code block (Shiki) with copy button and optional window bar.

collapsible

Collapsible content region built on Radix Collapsible.

container

Layout container with max-width, centering, and horizontal padding.

copyable-address

Blockchain address display with truncation and copy-to-clipboard.

divider

Horizontal rule divider.

dropzone

Drag-and-drop file upload area built on react-dropzone.

empty-state

Empty-state placeholder with icon, message, and optional action.

external-entity-link-interceptor

Intercepts clicks on external-domain links and shows a confirmation modal before navigating.

faq

FAQ section rendering question/answer items in an accordion.

field

Form field layout primitives (label + control + helper text rows).

file-input

File input field with label and helper text.

footer

Site footer with brand logo, link columns, and social accounts.

helper-text

Form helper/error text shown below inputs.

hero-animated-text

Hero heading with staggered per-word text animation.

infinite-slider

Infinitely looping horizontal marquee slider for logos or cards.

info-card

Content card with icon, title, and description.

info-icon

Info icon that shows a tooltip on hover.

input

Text input with error state and helper text.

label

Form label rendered through Typography with disabled-state styling.

loader

Loading spinner.

modal

Dialog modal built on Radix Dialog with header, footer, title, and description parts.

navigation

Responsive site navigation bar with links, mobile menu, and social accounts.

not-found-page

Ready-made 404 page section for Next.js not-found routes.

pagination

Page navigation with numbered pages and prev/next controls.

profile-card

User profile card with avatar, bio, wallet address, and social handles.

progress

Progress bar.

qr-code

QR code renderer.

scroll-area

Custom-styled scrollable area built on Radix ScrollArea.

segmented-control

Segmented button group for switching between options.

select

Select dropdown built on Radix Select with label and helper text.

separator

Separator line with optional label text.

skeleton

Skeleton loading placeholder.

somnia-rank

Somnia rank medal graphics (bronze, silver, gold).

sponsored-badge

Gradient 'Sponsored' badge.

statistic-card

Statistic display card with icon, value, and label.

status-badge

Live / ending-soon / ended status badge.

switch

Toggle switch with label, built on Radix Switch.

table

Styled table parts (header, body, row, cell) using Typography.

tabs

Tabs built on Radix Tabs with default and line variants.

textarea

Multiline text input with error state and helper text.

title

Section title block with optional icon and description.

toast

Toast notifications via Sonner (Toaster plus toast helpers).

tooltip

Tooltip built on Radix Tooltip.

typography

Text component enforcing the design system type scale (display, heading, label, paragraph variants). Use instead of raw p/span/h* tags.