Phantom Design System
Phantom pairs a dark ribbon hero with a lavender-white body, Phantom Sans and a periwinkle CTA pill. This DESIGN.md captures it for React and Next.js.
- Primary color
- #ab9ff2
- Typeface
- Phantom
- Shape
- Soft
- Base radius
- 24px
- Colors
- 11
- Type tokens
- 10
- Components
- 14
- Spacing values
- 8
About Phantom DESIGN.md
Curated by Dov Azencot, updated May 19, 2026. Source phantom.app (opens in a new tab).
Phantom's homepage opens with something most crypto wallets avoid: genuine visual risk. A full-bleed near-black canvas carries diagonal abstract ribbons — warm gold, deep teal, burnt rust, muted violet — sweeping across the frame at competing angles. The effect reads less like a marketing section and more like a canvas dropped from a generative art tool. The wordmark sits in the top-left in white; the nav links in deep violet; and the only CTA on the canvas is a softly-rounded pill in periwinkle lavender with matching ink. Then, on scroll, the page lands on a near-white lavender surface — tinted just enough to feel distinct from the plain white that most wallets default to. Where Coinbase commits to plain blue-on-white and MetaMask leans on orange-on-dark, Phantom chooses a tertiary hue and applies it to the canvas itself.
The DESIGN.md file packages the system for React and AI tools. Inside: 11 colors tokens, the dominant one being a dark violet-purple used 530 times across text and borders; a soft periwinkle lavender for the CTA pill and card shadow; a warm near-white for body surfaces; and a near-black for the hero. Typography is a single proprietary family — Phantom — running at weight 400 across every tier from 96px display down to 15px label, with no weight variation. The radius scale is generous-soft starting at 24px for cards, reaching 100px for pill buttons, with full-circle avatars at 50%. Spacing centers on a 16px base with section pads at 48px.
Feed this spec to an AI tool and it reproduces Phantom's two signature moves: the abstract ribbon hero (achieved through diagonal gradient or SVG strips in the brand palette, not photography) and the lavender-washed below-fold canvas. The one thing worth borrowing selectively is the single-weight type discipline — Phantom Sans at 400 creates a calm, approachable register that contrasts sharply with the aggressive DeFi aesthetic competitors favor. Most apps need at least one weight bump; Phantom proves it can work without one.
What makes it distinct
5 highlights
- Abstract ribbon heroDiagonal strokes in gold, teal, rust, and violet over a near-black canvas replace any traditional photography or illustration
- Lavender canvas washThe below-fold surface is a warm periwinkle near-white, not standard off-white; every card and section sits on this tinted floor
- Single-weight typographyPhantom Sans runs at weight 400 through display (96px) down to label (15px); there is no bold or heavy tier
- Inverted CTA pillThe primary button fills with soft periwinkle lavender and renders ink text in deep violet, reversing the light-text-on-dark convention
- Generous-rounded cards24px and 32px radius dominate; the scale skips any sub-16px tier
Live at phantom.app
Phantom in production, as captured. Scroll the window to see the whole page.

11 colors
Phantom's system runs on #ab9ff2 as its primary voltage, used in 2 of 14 components. Type is set in Phantom across 10 tokens from 15px to 96px, weights 350–400. Shape language is soft — components average 39px corner radius, with no sharp interactive edges.
Brand & Accent
Sparing, CTA-only voltage · 4
Surface
Page and card backgrounds · 3
Text
Headlines, body, captions · 2
Borders & Hairlines
Dividers, outlines, rules · 1
Other
Specialty colors · 1
10 type tokens
Set in Phantom across 10 tokens, from 15px to 96px, weights 350–400. Shown in its own stack: where the font isn't installed, the fallback the file names stands in.
- display-xl96px · weight 400 · lh 105.6px · tracking -2.4pxThe quick brown fox jumps over the lazy dog
- display-lg80px · weight 400 · lh 88px · tracking -2pxThe quick brown fox jumps over the lazy dog
- heading-md30px · weight 400 · lh 36pxThe quick brown fox jumps over the lazy dog
- heading-sm24px · weight 400 · lh 32.4px · tracking -0.6pxThe quick brown fox jumps over the lazy dog
- body-lg20px · weight 350 · lh 28pxThe quick brown fox jumps over the lazy dog
- body-md16px · weight 400 · lh 20pxThe quick brown fox jumps over the lazy dog
- body-sm15px · weight 400 · lh 18.15pxThe quick brown fox jumps over the lazy dog
- button-md16px · weight 400 · lh 20pxThe quick brown fox jumps over the lazy dog
- nav-link16px · weight 400 · lh 20pxThe quick brown fox jumps over the lazy dog
- label-sm15px · weight 400 · lh 18.15pxThe quick brown fox jumps over the lazy dog
Radii and spacing
7 corner radii and 8 spacing values. Shape language: soft, on a 24px base radius.
Radii7
- none0px
- sm16px
- md24px
- lg32px
- xl96px
- pill100px
- full50%
Spacing8
- xs4px
- sm8px
- md12px
- base16px
- lg24px
- xl32px
- 2xl48px
- section96px
14 components
Each rendered from its tokens (color, type, radius, padding) on Phantom's own canvas.
- Button PrimaryButton Primarybutton-primary
- Button SecondaryButton Secondarybutton-secondary
- Top NavTop Navtop-nav
- Nav LinkNav Linknav-link
- Hero SectionHero Sectionhero-section
- Hero HeadingHero Headinghero-heading
- Section HeadingSection Headingsection-heading
- Body ParagraphBody Paragraphbody-paragraph
- Body Paragraph MutedBody Paragraph Mutedbody-paragraph-muted
- CardCardcard
- Card DarkCard Darkcard-dark
- Card LavenderCard Lavendercard-lavender
- Type here…Text Inputtext-input
- FooterFooterfooter
The system, in use
Phantom's tokens on the kind of product it builds.
Money that moves as fast as you do
Send, save and spend with an account built for the way you live and work.
Phantom design system FAQ
Phantom's tokens, its components and how to use this DESIGN.md in your project.
Related reading
Specs, directories and component libraries that pair with this design system.
- Browse all design systemsThe full directory of DESIGN.md files on shadcn.io, with live mockups for each.shadcn.io
- Phantom — official sitePhantom's public marketing site — the source of truth for the live tokens captured in this file.phantom.app (opens in a new tab)
- The DESIGN.md specificationGoogle Labs' open spec for machine-readable design system files — the format this page is built on.github.com (opens in a new tab)
Use Phantom in your project
One machine-readable file. Drop it into Claude Code, Cursor, VS Code or any AI tool that reads DESIGN.md.
Download the DESIGN.md
One machine-readable file: every color, type, radius, spacing, and component token of Phantom.
Feed it to your AI tool
Drop it into Claude, Cursor, or GitHub Copilot. The agent writes React components and Tailwind classes that match Phantom's visual language.
Reference the tokens directly
Or paste the values into your Tailwind config, CSS variables, or component library: every color, size and radius is a quoted, ready-to-copy value.
Read the full DESIGN.md overview, rationale, do’s and don’ts
Overview
Phantom's marketing site makes a move almost no other crypto wallet attempts. Abstract Art as Brand Identity. The above-fold hero is a near-black canvas overlaid with diagonal abstract ribbons — warm gold, teal, rust, violet, and gray-lavender strips colliding at competing angles — a visual that reads more like generative art than a financial product. Where Coinbase commits to an orderly cobalt-on-white grid and MetaMask leans on orange-on-dark with product screenshots, Phantom puts illustrative abstraction at the center and keeps the product (a phone mockup) below the fold.
The below-fold surface drops to a lavender-washed near-white — tinted with the same violet family as the deep ink color, creating a tonal bridge between the dark hero and the body sections. The primary CTA is a periwinkle lavender pill with deep-violet text, inverting the typical convention of a dark button with light text. This inversion is consistent: across the marketing surface, lightness is the accent, darkness is the ink.
Typography is a single proprietary family — Phantom — running at weight 400 across every tier from 96px display to 15px label. The radius scale starts at 24px for cards; there is no tight sub-16px tier. The ghost mascot appears in the app product UI shown in feature cards, not as a hero decoration — the brand character is kept inside the product surface.
Key Characteristics:
- Near-black hero canvas with diagonal abstract ribbon illustration; no photography, no device mockup above the fold.
- Lavender-washed body surface (#fffdf8 — a near-white with violet undertone) rather than plain white for every below-fold section.
- Single brand voltage: periwinkle lavender (#ab9ff2) used as the CTA fill and card highlight shadow — 19 total occurrences in the extraction.
- Deep violet-purple ink (#3c315b) — frequency 530 — carries text and borders across the entire system.
- Phantom Sans at weight 400 across all tiers; the only variation is a single 350-weight for a sub-label tier. No bold or heavy.
- Generous radius scale: 24px on cards, 32px on feature tiles, 100px on pill CTAs, full circles on avatars.
- Feature cards below the fold use lavender, dark, and neutral fills — three visual registers within a consistent palette.
- Ghost mascot appears only inside product UI screenshots, never as a decorative hero element.
Colors
Brand
- Primary Lavender (
{colors.primary}— #ab9ff2): frequency 2. Used as background — the primary CTA button fill and a card accent highlight. The single chromatic brand moment in the system; a soft periwinkle lavender that reads warm and approachable rather than electric. - Shadow Lavender (
{colors.shadow-lavender}— #e2dffe): frequency 19. Used as background (7) and shadow (12). The card shadow tint and secondary highlight fill — a paler version of the primary lavender that reads almost white in most contexts. Wired as --eofi4sg and --eofi4sa.
Canvas & Surfaces
- Canvas (
{colors.canvas}— #1c1c1c): frequency 63. Used as text (30), background (3), border (30). The hero floor and dark-card surface — a near-black with no blue undertone, closer to charcoal than the true black Spline uses. - Surface-1 (
{colors.surface-1}— #fffdf8): frequency 90. Used as text (40), background (10), border (40). The below-fold canvas — a warm near-white with a faint violet undertone. The entire body of the page rests on this tinted floor. - Surface-2 (
{colors.surface-2}— #f4f2f4): frequency 3. Used as background only. A slightly cooler near-white for secondary surface contexts (e.g., input fields, chip backgrounds).
Text
- Ink (
{colors.ink}— #3c315b): frequency 530. Used as text (264) and border (264). The dominant text and border color across the entire system — a deep violet-purple rather than pure black, wired across ten CSS variables. Gives white-surface content a violet warmth. - Ink Muted (
{colors.ink-muted}— #86848d): frequency 8. Used as text (4) and border (4). Secondary and tertiary labels — a medium violet-gray.
Hairline
- Hairline (
{colors.hairline}— #e9e8ea): frequency 2. A light gray-violet for dividers and card borders on light surfaces.
Accent (illustrative palette)
- Accent Blue (
{colors.accent-blue}— #6ca0fb): frequency 1. Appears in the abstract ribbon illustration on the hero canvas — not a brand chrome color. - Accent Yellow (
{colors.accent-yellow}— #ffffc4): frequency 1. Ribbon illustration element — warm yellow strip on the hero. - Accent Pink (
{colors.accent-pink}— #ffdadc): frequency 1. Ribbon illustration element — blush-pink strip on the hero.
Typography
Font Family
The system runs Phantom — a proprietary custom sans-serif — across every tier. There is no second family, no mono voice, no serif counterpoint. Fallbacks walk to system-ui, -apple-system, sans-serif. The defining characteristic is weight uniformity: every tier from 96px display to 15px label runs at weight 400, with a single 350-weight exception for a 20px sub-label tier.
Hierarchy
| Token | Size | Weight | Line Height | Letter Spacing | Use |
|---|---|---|---|---|---|
{typography.display-xl} | 96px | 400 | 105.6px | -2.4px | Hero h2 ("Trading tools for everyone") |
{typography.display-lg} | 80px | 400 | 88px | -2px | Large number displays in feature cards |
{typography.heading-md} | 30px | 400 | 36px | 0 | Section paragraph leads |
{typography.heading-sm} | 24px | 400 | 32.4px | -0.6px | Section h2/h3 headings |
{typography.body-lg} | 20px | 350 | 28px | 0 | Sub-heading / lead body |
{typography.body-md} | 16px | 400 | 20px | 0 | Default body text |
{typography.body-sm} | 15px | 400 | 18.15px | 0 | Labels, captions, small UI text |
{typography.button-md} | 16px | 400 | 20px | 0 | CTA button label |
{typography.nav-link} | 16px | 400 | 20px | 0 | Top-nav link labels |
{typography.label-sm} | 15px | 400 | 18.15px | 0 | Chip labels, tag text |
Principles
Weight 400 through the entire scale is the discipline. The 96px display h2 at weight 400 with -2.4px tracking delivers authority through size and tracking, not through bold weight. This is the opposite of the typical fintech approach (Stripe, Revolut) that leans on weight 600–700 for hierarchy. The single 350-weight concession at 20px reads as the system's "medium" emphasis — barely perceptible but present.
Note on Font Substitutes
Phantom is proprietary. Plus Jakarta Sans at weight 400 is the closest open-source substitute for display sizes — it shares the rounded terminals and warm proportions of Phantom. Inter at weight 400 transfers cleanly for body sizes. Preserve the single-weight discipline: introducing weight 600 or 700 breaks the calm register the system depends on.
Layout
Spacing System
- Base unit: 4px (8px as the dominant padding module).
- Tokens:
{spacing.xs}4px ·{spacing.sm}8px ·{spacing.md}12px ·{spacing.base}16px ·{spacing.lg}24px ·{spacing.xl}32px ·{spacing.2xl}48px ·{spacing.section}96px. - Hero padding: 48px top and sides; the abstract ribbon fills edge-to-edge.
- Card internal padding:
{spacing.lg}(24px) on all feature cards. - Section padding (vertical): 96px at the top of major sections, 48px at the bottom.
Grid & Container
- Max content width: ~1080px on text-heavy sections; the hero ribbon fills full browser width.
- Hero: full-bleed near-black canvas with the ribbon illustration behind the centered headline + CTA stack.
- Feature section: 3-column horizontal card carousel below the fold — lavender, dark, and neutral fills per card.
- App mockup section: centered single phone/card mockup at ~400px wide on the lavender surface.
Rhythm
The page alternates between the full-bleed dark hero and light lavender editorial sections. Below the fold each section rests on the same warm near-white surface — no alternating backgrounds, no color band changes. Depth comes from the card fills (lavender, dark, neutral) rather than from section-background shifts.
Elevation
The system uses shadow-lavender tinting rather than neutral-gray drop shadows.
- Flat (no shadow): hero, nav, footer, editorial text sections.
- Tinted card shadow:
{colors.shadow-lavender}(#e2dffe) appears 12 times as shadow ink — the card lift effect uses a lavender-tinted shadow rather than black-alpha, which keeps the shadow within the brand palette. - Surface contrast: dark cards (#1c1c1c) on the lavender surface read as elevated by color contrast alone; no shadow needed.
Shapes
The radius scale is generous-soft, starting at 16px and skipping any tight tier:
{rounded.none}0px — used for the hero section wrapper and text blocks.{rounded.sm}16px — a single captured instance; used for minor UI elements.{rounded.md}24px (14 instances) — the default card radius; the dominant rounded shape on the page.{rounded.lg}32px (12 instances) — larger feature tiles and the hero section card wrapper.{rounded.xl}96px (2 instances) — the largest card radius on the hero-section inner container.{rounded.pill}100px (7 instances) — pill buttons (CTA "Download" and secondary actions).{rounded.full}50% (6 instances) — avatar circles, icon chips, the ghost mascot badge.
There is no 4px or 8px tier. The system is deliberately soft — even the smallest UI surfaces start at 24px.
Components
button-primary — The signature CTA. Soft periwinkle lavender {colors.primary} fill, deep-violet {colors.ink} text, 100px pill radius, 16×32 padding, 52px height. "Download" is the canonical hero instance — the only chromatic accent on the dark canvas.
button-secondary — Transparent fill, {colors.ink} text, 1px border in ink, pill radius. Used for secondary actions like "Explore" in the nav.
top-nav — Warm near-white {colors.surface-1} surface, deep-violet {colors.ink} text, 56px height, no bottom border. Phantom wordmark flush left in the deep violet; nav links (Features, Learn, Explore, Company, Developers, Support) centered; Download CTA pill right-aligned.
nav-link — Transparent background, {colors.ink} text at {typography.nav-link} (16px / 400), 12×24 padding with dropdown indicator.
hero-section — Near-black {colors.canvas} fill, 48px padding, {rounded.md} 24px radius on the inner container. The abstract ribbon illustration fills edge-to-edge behind the centered headline + sub-label + CTA stack.
hero-heading — White {colors.surface-1} text, Phantom 96px / 400, -2.4px tracking. The hero h2 centers over the ribbon art.
section-heading — Deep-violet {colors.ink} text at {typography.heading-md} (30px / 400) on the lavender surface.
body-paragraph — Default {colors.ink} text at {typography.body-md} (16px / 400).
body-paragraph-muted — Muted {colors.ink-muted} text at {typography.body-sm} for secondary captions.
card — Warm near-white {colors.surface-1} fill, {colors.ink} text, {rounded.md} 24px radius, 24px padding, lavender shadow tint via {colors.shadow-lavender}.
card-dark — Near-black {colors.canvas} fill, white text, {rounded.md} 24px radius, 24px padding. Used in the feature carousel for the dark-tone card variant.
card-lavender — Periwinkle {colors.primary} fill, {colors.ink} text, {rounded.md} 24px radius. Used in the feature carousel for the lavender-tone card variant.
text-input — {colors.surface-2} fill, {colors.ink} text, {rounded.sm} 16px radius, 12×20 padding, 44px height. No visible border in the resting state.
footer — Warm near-white {colors.surface-1} surface, muted {colors.ink-muted} text at {typography.body-sm}, 48×24 padding. Continues the lavender-washed body floor.
Do's and Don'ts
Do treat the abstract ribbon hero as an illustration layer, not a CSS gradient. The ribbons cross at competing angles and have textured edges — they are rendered art, not geometric shapes. Approximate with SVG paths or an image asset; a CSS linear-gradient will look flat by comparison.
Do use {colors.surface-1} (#fffdf8) — not pure white — for the below-fold canvas. The violet undertone links the body to the deep-violet ink color and to the hero's lavender accent. Pure white severs that connection.
Do keep Phantom Sans (or its substitute) at weight 400 across all tiers. The calm authority of a 96px headline at weight 400 depends on the entire scale holding the same weight — introducing a 700-weight h1 collapses the system's defining register.
Do apply the {colors.shadow-lavender} (#e2dffe) shadow tint to card hover states. The lavender shadow keeps elevation within the brand palette instead of defaulting to neutral black-alpha.
Don't use {colors.primary} (#ab9ff2) for text or background fills outside the CTA button and card highlight contexts. It appears only 2 times on the marketing surface; multiplying it into section fills destroys the single-voltage discipline.
Don't introduce any radius below 16px. The system's softness starts at {rounded.sm} (16px) — the minimum. Bringing in 4px or 8px rounding reads like a different product's design language.
Don't use the illustrative ribbon palette (accent blue, accent yellow, accent pink) outside the hero illustration context. Those hues belong to the abstract art layer, not to the brand chrome.
Don't place the ghost mascot as a decorative header element. Phantom keeps the mascot inside product UI screenshots — it is a product character, not a brand wallpaper. Using it as a hero illustration over-explains the brand.
Known Gaps
- Hover and active states: no hover or press variants captured from the marketing surface; only the resting
{component.button-primary}state is documented. - Dark-mode body: the system has a near-black hero canvas, but the body sections are light-only. Whether a dark-mode body variant exists on other pages is not represented here.
- Motion: the hero ribbon appears to be an animated or parallax illustration in the live page; the spec captures static end-state values only. Easing curves and animation timing are not represented.
- Ghost mascot specifications: the mascot appears in product screenshots but its construction (SVG, illustration style, proportions) is outside the scope of the marketing surface extraction.
- Mobile breakpoints: the captured surface is desktop-width. The feature card carousel likely collapses to a single-column scroll on mobile; no responsive tokens are captured.
- Form states:
{component.text-input}carries the resting state only; focus ring, error, and disabled states are not documented from the marketing surface. - Subscription or tier accents: the extraction shows accent blue (#6ca0fb) and accent colors appearing once each — their role (illustrative? tier-specific?) is unclear from the marketing-only capture.
More systems like this
Afterpay, Barclays, Betterment and 38 more in Fintech & Crypto: each brand's colors, type and components in one file your AI agent builds from.
Build it with Pro
The DESIGN.md files are free. Pro adds 6,000+ blocks, premium templates and the MCP server, so your AI editor builds in your system for you.
4.9/5 out of 5 · 150+ reviewsfrom 150+ founders and developers.
Billing
Billed once a year in USD. Cancel anytime.
- How many people can use the license.
- Client work, SaaS products and anything you charge for.
- Page sections in 56 categories, from heroes and pricing tables to dashboards and settings, on every framework and UI library, in your theme.
- Complete Next.js sites for startups, SaaS, agencies and portfolios, every page designed, ready to ship.
- Your AI agent searches, previews and installs any component, block, icon or DESIGN.md from a prompt: 22 tools in Claude Code, Cursor, VS Code and 35 more clients.
- Buttons with motion and states of their own, from an arrow that slides in to a burst of confetti.
- Typewriters, scrambles, counters and more, for headlines, labels and numbers.
- Animated backgrounds for heroes, sections and cards, from a soft aurora to a flock that flees the cursor. Most are pure CSS.
- WebGPU shaders, from a slow aurora to a black hole, each drawing only while it's on screen.
- One design and one theme on all four: the components, blocks and effects are built for each framework.
- React on Base UI, Radix UI, React Aria or Ark UI: install the version for the library your project already uses. Vue, Svelte and Solid run on Ark UI.
- From a button to a date picker, a color picker or a guided tour: accessible, typed in TypeScript, each with live demos.
- Real-world patterns built from the components, in 53 galleries: forms, tables, menus, dialogs and more.
- Area, bar, line, pie, radar and radial charts on TanStack Charts, on every framework. React also gets the Recharts originals.
- Debounce, local storage, media queries and more: each hook is one typed file you own.
- From 222 libraries, Lucide, Heroicons, Tabler and Material Symbols among them, as SVG or a React component in one command.
- Stripe, Linear, Apple and 497 more: a brand's colors, typography and components in one file your AI agent builds from.
- Restyle every component and block at once: 8 styles, 8 grays, 18 colors and 5 radii, shared as a shadcn preset code.
- Priority requests are answered first.
Individual
For personal projects & open source
$32instead of $49/mo
$389 billed yearly
- Seats: 1 seat
- Commercial use: Personal & open source only
- Blocks: All 6,181 blocks
- Templates: All 14 templates
- MCP server: 38 AI clients
- Animated buttons: All 35 buttons
- Text effects: All 97 effects
- Backgrounds: All 100 backgrounds
- Shaders: All 100 shaders
- Frameworks: React, Vue, Svelte, Solid
- UI libraries: Base UI, Radix, Aria, Ark
- Components: All 174 components
- Examples: All 1,103 examples
- Charts: All 70 charts
- React hooks: All 35 hooks
- Icons: 294k+ icons
- DESIGN.md files: All 500 brands
- Theme builder: 8 styles × 18 colors
- Support: Standard
Team
Most popularFor freelancers, agencies & startups
$66instead of $99/mo
$789 billed yearly · ≈ $13/dev/mo
- Seats: Up to 5 seats
- Commercial use: Included
- Blocks: All 6,181 blocks
- Templates: All 14 templates
- MCP server: 38 AI clients
- Animated buttons: All 35 buttons
- Text effects: All 97 effects
- Backgrounds: All 100 backgrounds
- Shaders: All 100 shaders
- Frameworks: React, Vue, Svelte, Solid
- UI libraries: Base UI, Radix, Aria, Ark
- Components: All 174 components
- Examples: All 1,103 examples
- Charts: All 70 charts
- React hooks: All 35 hooks
- Icons: 294k+ icons
- DESIGN.md files: All 500 brands
- Theme builder: 8 styles × 18 colors
- Support: Priority
Organization
For companies with larger teams
$132instead of $199/mo
$1,589 billed yearly
- Seats: Unlimited seats
- Commercial use: Included
- Blocks: All 6,181 blocks
- Templates: All 14 templates
- MCP server: 38 AI clients
- Animated buttons: All 35 buttons
- Text effects: All 97 effects
- Backgrounds: All 100 backgrounds
- Shaders: All 100 shaders
- Frameworks: React, Vue, Svelte, Solid
- UI libraries: Base UI, Radix, Aria, Ark
- Components: All 174 components
- Examples: All 1,103 examples
- Charts: All 70 charts
- React hooks: All 35 hooks
- Icons: 294k+ icons
- DESIGN.md files: All 500 brands
- Theme builder: 8 styles × 18 colors
- Support: Priority
Billed once a year in USD. Cancel anytime.
Individual
For personal projects & open source
$32instead of $49/mo
$389 billed yearly
- How many people can use the license.Seats: 1 seat
- Client work, SaaS products and anything you charge for.Commercial use: Personal & open source only
- Page sections in 56 categories, from heroes and pricing tables to dashboards and settings, on every framework and UI library, in your theme.Blocks: All 6,181 blocks
- Complete Next.js sites for startups, SaaS, agencies and portfolios, every page designed, ready to ship.Templates: All 14 templates
- Your AI agent searches, previews and installs any component, block, icon or DESIGN.md from a prompt: 22 tools in Claude Code, Cursor, VS Code and 35 more clients.MCP server: 38 AI clients
- Buttons with motion and states of their own, from an arrow that slides in to a burst of confetti.Animated buttons: All 35 buttons
- Typewriters, scrambles, counters and more, for headlines, labels and numbers.Text effects: All 97 effects
- Animated backgrounds for heroes, sections and cards, from a soft aurora to a flock that flees the cursor. Most are pure CSS.Backgrounds: All 100 backgrounds
- WebGPU shaders, from a slow aurora to a black hole, each drawing only while it's on screen.Shaders: All 100 shaders
- One design and one theme on all four: the components, blocks and effects are built for each framework.Frameworks: React, Vue, Svelte, Solid
- React on Base UI, Radix UI, React Aria or Ark UI: install the version for the library your project already uses. Vue, Svelte and Solid run on Ark UI.UI libraries: Base UI, Radix, Aria, Ark
- From a button to a date picker, a color picker or a guided tour: accessible, typed in TypeScript, each with live demos.Components: All 174 components
- Real-world patterns built from the components, in 53 galleries: forms, tables, menus, dialogs and more.Examples: All 1,103 examples
- Area, bar, line, pie, radar and radial charts on TanStack Charts, on every framework. React also gets the Recharts originals.Charts: All 70 charts
- Debounce, local storage, media queries and more: each hook is one typed file you own.React hooks: All 35 hooks
- From 222 libraries, Lucide, Heroicons, Tabler and Material Symbols among them, as SVG or a React component in one command.Icons: 294k+ icons
- Stripe, Linear, Apple and 497 more: a brand's colors, typography and components in one file your AI agent builds from.DESIGN.md files: All 500 brands
- Restyle every component and block at once: 8 styles, 8 grays, 18 colors and 5 radii, shared as a shadcn preset code.Theme builder: 8 styles × 18 colors
- Priority requests are answered first.Support: Standard
Team
Most popularFor freelancers, agencies & startups
$66instead of $99/mo
$789 billed yearly · ≈ $13/dev/mo
Everything in Individual, plus
- How many people can use the license.Seats: Up to 5 seats
- Client work, SaaS products and anything you charge for.Commercial use: Included
- Priority requests are answered first.Support: Priority
Organization
For companies with larger teams
$132instead of $199/mo
$1,589 billed yearly
Everything in Team, plus
- How many people can use the license.Seats: Unlimited seats
- Secure checkout via Stripe
- Code lives in your repo
- Keep what you've shipped if you cancel
- License terms
4.9 out of 5 from 150+ developers
Your system, built for you
Every block, template and icon, installed by your AI agent in your design system. The DESIGN.md files stay free.
- Cancel anytime
- Keep what you've shipped