back to gallery
design language·tincture

Tincture

A portable design language for agents: download the markdown first, then inspect the preview, tokens, and rules as needed.

Download DESIGN.md

Portable DESIGN.md source of truth for most agents and apps.

the spec

specification

philosophy
summary
A dark colour-reading vault where every saturated hue is a measured specimen bound to one named product role, shown as a suspended glass vial over ink-charcoal; colour is data, never decoration.
values
colour as measured dataone reading, one bound roledark architectural calmmaterial depth without bordershandmade pigment intelligence
anti-values
×colour as decoration×rainbow confetti and sprays×bright generic product console×neon glow×muddy washes×textbook colour-wheel layouts
tokens
colors16 items
bg
#0E1216
surface
#161C22
surface_2
#1E262E
text
#ECEFF2
muted
#8A95A1
border
rgba(236,239,242,0.10)
accent
#C24BE0
accent_2
#3FC7E8
accent_3
#9BE234
accent_4
#F2B33D
accent_5
#FF6F5B
on_accent
#0E1216
success
#7FC81E
warning
#E8A21C
error
#E5523F
info
#3FC7E8
typography10 items
base size
17px
body font
Space Grotesk
heading font
Fraunces
mono font
IBM Plex Mono
heading weight
600
heading transform
none
letter spacing
-0.02em
line height
1.55
scale ratio
1.24
google fonts url
https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,400;0,9..144,600;1,9..144,500&family=Space+Grotesk:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500;600&display=swap
radii5 items
none
0
sm
16px
md
16px
lg
24px
full
9999px
shadows3 items
sm
0 1px 2px rgba(0,0,0,0.5)
md
0 18px 44px rgba(0,0,0,0.55)
lg
0 40px 90px rgba(0,0,0,0.6)
spacing2 items
base
8px
scale
4, 8, 12, 16, 24, 32, 48, 64
surfaces3 items
treatment
translucent frosted glass on a deep ink-charcoal vault: low-alpha white linear gradient, backdrop blur, and an inset top highlight
card style
frosted glass pane, radius 24, soft dark shadow, inset top highlight, no border; an optional spectral-seam segment when it divides bound readings
bg pattern
near-black ink-charcoal with one faint violet light-well from the specimen, never decorative confetti
borders4 items
default width
0
accent width
0
style
no borders; depth comes from frosted material, soft shadow, and an inset white-12% highlight
character
colour appears only as a bound reading on a vial, gauge, role dot, or badge; never as a decorative card edge
motion3 items
duration
200ms
easing
cubic-bezier(0.2, 0.8, 0.2, 1)
philosophy
a short rise-and-settle on scroll and a colour-wash focus ring; the settled state is the default, fully visible with no JavaScript; motion is layered on only when JS sets js-anim; respects prefers-reduced-motion
rules
composition
A centred stage with a thin luminous spectral seam pinned to the far left holding the bound readings; content flows as a single calm column of frosted glass panes over an ink-charcoal vault. The dashboard adds a breathing left index, never a boxed widget.
hierarchy
Typography (Fraunces serif display vs Space Grotesk body vs mono metadata), glass elevation, and the spectral seam create hierarchy; saturated colour is reserved for bound readings, states, and alerts only.
density
Instrument-readout rhythm: compact mono metadata and controls inside airy frosted panes, with visible coordinate and deltaE values for a trusted measurement tool.
signature
Suspended vial readings on the spectral seam — each pigment is a glass vial filled to a measured level over the dark vault, labelled with its hex coordinate and the single product role it owns; the bound set stacks into one continuous master strip.
layout
grid
Centred stage: a ~64px spectral-seam gutter on the left and a fluid single column of glass panes; the dashboard uses an 18px seam + 240px breathing index + fluid main.
whitespace

Dark and architectural — generous outer gutters, tight internal control spacing, no loose decorative gaps; the ink ground carries the negative space.

density

Compact mono metadata inside airy frosted sections; values, coordinates, and deltaE always shown.

responsive
Below 820px the spectral seam and side index collapse, the top nav hides non-essential links, grids fold to a single column with minmax(0,1fr); only the landing hero spans full-bleed.
breakpoints
mobile
390px
tablet
768px
desktop
1440px
ultrawide
2560px
guidance
do
  • Bind every saturated colour to one named product role and keep the mapping fixed.
  • Show colour as a measured vial with its hex coordinate, not as a bare swatch grid.
  • Keep the field deep ink-charcoal and quiet so a single reading can lead.
  • Build elevation from frosted material and soft shadow, never from borders.
  • Pair role colour with a text label or pill, never colour alone.
avoid
  • Do not spray colour as confetti or give a pane a decorative accent edge with no role.
  • Do not add borders, neon glow, or muddy washes.
  • Do not let semantic red or amber become visually primary.
  • Do not default to a bright silver product console; the dark vault is the identity.
  • Do not bury hero subjects so the veil erases them.
imagery
pairs with

frostmark

summary
A single luminous pigment specimen — a slender glass vial of glowing concentrated tincture — suspended in a near-black vault, veiled behind layered frosted glass slabs with hairline seams; gouache daubs crest the glass edges as measured colour samples.
subjects
a glowing pigment vial / colour specimena measured swatch suspended in shadowa master colour strip read against the darka single luminous reading
usage

Full-bleed dark hero with negative space at top for a centred-low headline overlay; charcoal-to-near-black tonal depth; daubs few and placed, never confetti.

katagami spec
# Tincture

## Philosophy

A dark colour-reading vault where every saturated hue is a measured specimen bound to one named product role, shown as a suspended glass vial over ink-charcoal; colour is data, never decoration.

### Values

- colour as measured data
- one reading, one bound role
- dark architectural calm
- material depth without borders
- handmade pigment intelligence

### Anti-Values

- colour as decoration
- rainbow confetti and sprays
- bright generic product console
- neon glow
- muddy washes
- textbook colour-wheel layouts

## Tokens

### Colors

| Name | Value |
|------|-------|
| bg | `#0E1216` |
| surface | `#161C22` |
| surface_2 | `#1E262E` |
| text | `#ECEFF2` |
| muted | `#8A95A1` |
| border | `rgba(236,239,242,0.10)` |
| accent | `#C24BE0` |
| accent_2 | `#3FC7E8` |
| accent_3 | `#9BE234` |
| accent_4 | `#F2B33D` |
| accent_5 | `#FF6F5B` |
| on_accent | `#0E1216` |
| success | `#7FC81E` |
| warning | `#E8A21C` |
| error | `#E5523F` |
| info | `#3FC7E8` |

### Typography

- **Base Size**: 17px
- **Body Font**: Space Grotesk
- **Heading Font**: Fraunces
- **Mono Font**: IBM Plex Mono
- **Heading Weight**: 600
- **Heading Transform**: none
- **Letter Spacing**: -0.02em
- **Line Height**: 1.55
- **Scale Ratio**: 1.24
- **Google Fonts Url**: https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,400;0,9..144,600;1,9..144,500&family=Space+Grotesk:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500;600&display=swap

### Radii

- **None**: 0
- **Sm**: 16px
- **Md**: 16px
- **Lg**: 24px
- **Full**: 9999px

### Shadows

- **Sm**: 0 1px 2px rgba(0,0,0,0.5)
- **Md**: 0 18px 44px rgba(0,0,0,0.55)
- **Lg**: 0 40px 90px rgba(0,0,0,0.6)

### Spacing

- **Base**: 8px
- **Scale**: [4,8,12,16,24,32,48,64]

### Surfaces

- **Treatment**: translucent frosted glass on a deep ink-charcoal vault: low-alpha white linear gradient, backdrop blur, and an inset top highlight
- **Card Style**: frosted glass pane, radius 24, soft dark shadow, inset top highlight, no border; an optional spectral-seam segment when it divides bound readings
- **Bg Pattern**: near-black ink-charcoal with one faint violet light-well from the specimen, never decorative confetti

### Borders

- **Default Width**: 0
- **Accent Width**: 0
- **Style**: no borders; depth comes from frosted material, soft shadow, and an inset white-12% highlight
- **Character**: colour appears only as a bound reading on a vial, gauge, role dot, or badge; never as a decorative card edge

### Motion

- **Duration**: 200ms
- **Easing**: cubic-bezier(0.2, 0.8, 0.2, 1)
- **Philosophy**: a short rise-and-settle on scroll and a colour-wash focus ring; the settled state is the default, fully visible with no JavaScript; motion is layered on only when JS sets js-anim; respects prefers-reduced-motion

## Rules

### Composition

A centred stage with a thin luminous spectral seam pinned to the far left holding the bound readings; content flows as a single calm column of frosted glass panes over an ink-charcoal vault. The dashboard adds a breathing left index, never a boxed widget.

### Hierarchy

Typography (Fraunces serif display vs Space Grotesk body vs mono metadata), glass elevation, and the spectral seam create hierarchy; saturated colour is reserved for bound readings, states, and alerts only.

### Density

Instrument-readout rhythm: compact mono metadata and controls inside airy frosted panes, with visible coordinate and deltaE values for a trusted measurement tool.

### Signature

Suspended vial readings on the spectral seam — each pigment is a glass vial filled to a measured level over the dark vault, labelled with its hex coordinate and the single product role it owns; the bound set stacks into one continuous master strip.

## Layout

### Grid

Centred stage: a ~64px spectral-seam gutter on the left and a fluid single column of glass panes; the dashboard uses an 18px seam + 240px breathing index + fluid main.

### Whitespace

Dark and architectural — generous outer gutters, tight internal control spacing, no loose decorative gaps; the ink ground carries the negative space.

### Density

Compact mono metadata inside airy frosted sections; values, coordinates, and deltaE always shown.

### Responsive

Below 820px the spectral seam and side index collapse, the top nav hides non-essential links, grids fold to a single column with minmax(0,1fr); only the landing hero spans full-bleed.

### Breakpoints

- **Mobile**: 390px
- **Tablet**: 768px
- **Desktop**: 1440px
- **Ultrawide**: 2560px

## Guidance

### Do

- Bind every saturated colour to one named product role and keep the mapping fixed.
- Show colour as a measured vial with its hex coordinate, not as a bare swatch grid.
- Keep the field deep ink-charcoal and quiet so a single reading can lead.
- Build elevation from frosted material and soft shadow, never from borders.
- Pair role colour with a text label or pill, never colour alone.

### Don't

- Do not spray colour as confetti or give a pane a decorative accent edge with no role.
- Do not add borders, neon glow, or muddy washes.
- Do not let semantic red or amber become visually primary.
- Do not default to a bright silver product console; the dark vault is the identity.
- Do not bury hero subjects so the veil erases them.

### Accessibility

Light ink #ECEFF2 on the ink-charcoal vault and charcoal on saturated readings clear WCAG AA; focus is a visible violet ring plus a soft wash; role colour is always paired with a label, value, or pill; the settled page renders with no JavaScript; respects prefers-reduced-motion.

## Imagery Direction

### Pairs With

frostmark

### Summary

A single luminous pigment specimen — a slender glass vial of glowing concentrated tincture — suspended in a near-black vault, veiled behind layered frosted glass slabs with hairline seams; gouache daubs crest the glass edges as measured colour samples.

### Subjects

- a glowing pigment vial / colour specimen
- a measured swatch suspended in shadow
- a master colour strip read against the dark
- a single luminous reading

### Usage

Full-bleed dark hero with negative space at top for a centred-low headline overlay; charcoal-to-near-black tonal depth; daubs few and placed, never confetti.
DESIGN.md
---
version: "alpha"
name: "Tincture"
description: "Agent-curated design language exported from Katagami as DESIGN.md."
colors:
  bg: "#0E1216"
  surface: "#161C22"
  surface_2: "#1E262E"
  text: "#ECEFF2"
  muted: "#8A95A1"
  accent: "#C24BE0"
  accent_2: "#3FC7E8"
  accent_3: "#9BE234"
  accent_4: "#F2B33D"
  accent_5: "#FF6F5B"
  on_accent: "#0E1216"
  success: "#7FC81E"
  warning: "#E8A21C"
  error: "#E5523F"
  info: "#3FC7E8"
typography:
  headline-lg:
    fontFamily: "Fraunces"
    fontSize: "2.026rem"
    fontWeight: 700
    lineHeight: 1.1
    letterSpacing: "-0.02em"
  headline-md:
    fontFamily: "Fraunces"
    fontSize: "1.634rem"
    fontWeight: 600
    lineHeight: 1.15
    letterSpacing: "-0.02em"
  body-md:
    fontFamily: "Space Grotesk"
    fontSize: "17px"
    fontWeight: 400
    lineHeight: 1.55
    letterSpacing: "-0.02em"
  label-md:
    fontFamily: "IBM Plex Mono"
    fontSize: "0.75rem"
    fontWeight: 600
    lineHeight: 1
    letterSpacing: "0.08em"
rounded:
  none: "0px"
  sm: "16px"
  md: "16px"
  lg: "24px"
  full: "9999px"
spacing:
  base: "8px"
  xs: "4px"
  sm: "8px"
  md: "12px"
  lg: "16px"
  xl: "24px"
  2xl: "32px"
  3xl: "48px"
  4xl: "64px"
components:
  color-reference-bg:
    backgroundColor: "{colors.bg}"
  color-reference-surface:
    backgroundColor: "{colors.surface}"
  color-reference-surface_2:
    backgroundColor: "{colors.surface_2}"
  color-reference-text:
    backgroundColor: "{colors.text}"
  color-reference-muted:
    backgroundColor: "{colors.muted}"
  color-reference-accent:
    backgroundColor: "{colors.accent}"
  color-reference-accent_2:
    backgroundColor: "{colors.accent_2}"
  color-reference-accent_3:
    backgroundColor: "{colors.accent_3}"
  color-reference-accent_4:
    backgroundColor: "{colors.accent_4}"
  color-reference-accent_5:
    backgroundColor: "{colors.accent_5}"
  color-reference-on_accent:
    backgroundColor: "{colors.on_accent}"
  color-reference-success:
    backgroundColor: "{colors.success}"
  color-reference-warning:
    backgroundColor: "{colors.warning}"
  color-reference-error:
    backgroundColor: "{colors.error}"
  color-reference-info:
    backgroundColor: "{colors.info}"
  button-primary:
    backgroundColor: "{colors.accent}"
    textColor: "#000000"
    typography: "{typography.label-md}"
    rounded: "{rounded.md}"
    padding: "{spacing.md}"
  card-surface:
    backgroundColor: "{colors.surface}"
    textColor: "{colors.text}"
    rounded: "{rounded.md}"
    padding: "{spacing.md}"
  input-default:
    backgroundColor: "{colors.surface}"
    textColor: "{colors.text}"
    rounded: "{rounded.md}"
    height: "44px"
---

# Tincture

## Overview

A dark colour-reading vault where every saturated hue is a measured specimen bound to one named product role, shown as a suspended glass vial over ink-charcoal; colour is data, never decoration.

### Values

- colour as measured data
- one reading, one bound role
- dark architectural calm
- material depth without borders
- handmade pigment intelligence

### Anti-Values

- colour as decoration
- rainbow confetti and sprays
- bright generic product console
- neon glow
- muddy washes
- textbook colour-wheel layouts

## Colors

Use the YAML color tokens as the normative palette. The prose below names the roles agents should preserve when generating UI.

| Token | Value |
|-------|-------|
| bg | `#0E1216` |
| surface | `#161C22` |
| surface_2 | `#1E262E` |
| text | `#ECEFF2` |
| muted | `#8A95A1` |
| accent | `#C24BE0` |
| accent_2 | `#3FC7E8` |
| accent_3 | `#9BE234` |
| accent_4 | `#F2B33D` |
| accent_5 | `#FF6F5B` |
| on_accent | `#0E1216` |
| success | `#7FC81E` |
| warning | `#E8A21C` |
| error | `#E5523F` |
| info | `#3FC7E8` |

## Typography

- **Headline-Lg**: Fraunces, 2.026rem, weight 700, line-height 1.1.
- **Headline-Md**: Fraunces, 1.634rem, weight 600, line-height 1.15.
- **Body-Md**: Space Grotesk, 17px, weight 400, line-height 1.55.
- **Label-Md**: IBM Plex Mono, 0.75rem, weight 600, line-height 1.

## Layout

### Spacing Tokens

- **Base**: `8px`
- **Xs**: `4px`
- **Sm**: `8px`
- **Md**: `12px`
- **Lg**: `16px`
- **Xl**: `24px`
- **2xl**: `32px`
- **3xl**: `48px`
- **4xl**: `64px`

### Grid

Centred stage: a ~64px spectral-seam gutter on the left and a fluid single column of glass panes; the dashboard uses an 18px seam + 240px breathing index + fluid main.

### Whitespace

Dark and architectural — generous outer gutters, tight internal control spacing, no loose decorative gaps; the ink ground carries the negative space.

### Density

Compact mono metadata inside airy frosted sections; values, coordinates, and deltaE always shown.

### Responsive

Below 820px the spectral seam and side index collapse, the top nav hides non-essential links, grids fold to a single column with minmax(0,1fr); only the landing hero spans full-bleed.

### Breakpoints

- **Mobile**: 390px
- **Tablet**: 768px
- **Desktop**: 1440px
- **Ultrawide**: 2560px

## Elevation & Depth

### Shadows

- **Sm**: 0 1px 2px rgba(0,0,0,0.5)
- **Md**: 0 18px 44px rgba(0,0,0,0.55)
- **Lg**: 0 40px 90px rgba(0,0,0,0.6)

## Shapes

### Rounded

- **None**: `0px`
- **Sm**: `16px`
- **Md**: `16px`
- **Lg**: `24px`
- **Full**: `9999px`

### Surfaces

- **Treatment**: translucent frosted glass on a deep ink-charcoal vault: low-alpha white linear gradient, backdrop blur, and an inset top highlight
- **Card Style**: frosted glass pane, radius 24, soft dark shadow, inset top highlight, no border; an optional spectral-seam segment when it divides bound readings
- **Bg Pattern**: near-black ink-charcoal with one faint violet light-well from the specimen, never decorative confetti

### Borders

- **Default Width**: 0
- **Accent Width**: 0
- **Style**: no borders; depth comes from frosted material, soft shadow, and an inset white-12% highlight
- **Character**: colour appears only as a bound reading on a vial, gauge, role dot, or badge; never as a decorative card edge

## Components

### Composition

A centred stage with a thin luminous spectral seam pinned to the far left holding the bound readings; content flows as a single calm column of frosted glass panes over an ink-charcoal vault. The dashboard adds a breathing left index, never a boxed widget.

### Hierarchy

Typography (Fraunces serif display vs Space Grotesk body vs mono metadata), glass elevation, and the spectral seam create hierarchy; saturated colour is reserved for bound readings, states, and alerts only.

### Density

Instrument-readout rhythm: compact mono metadata and controls inside airy frosted panes, with visible coordinate and deltaE values for a trusted measurement tool.

### Signature

Suspended vial readings on the spectral seam — each pigment is a glass vial filled to a measured level over the dark vault, labelled with its hex coordinate and the single product role it owns; the bound set stacks into one continuous master strip.

## shadcn/ui Usage

When the target app uses shadcn/ui, copy DESIGN.md with shadcn instead of the plain DESIGN.md. It contains the same Katagami design-language source plus the shadcn/ui primitives, imports, theme variables, component recipes, and preview-shot guidance.

DESIGN.md with shadcn: `/language/en-019efa8b-fedc-7b53-b645-a940c514ea6b/DESIGN.with-shadcn.md`.

The shadcn page also exposes optional machine-readable files for automation, but the human-facing handoff is DESIGN.md with shadcn.

Install recommended primitives with `npx shadcn@latest add button card input textarea select dialog sheet tabs badge separator checkbox switch slider tooltip dropdown-menu table`.

Use these primitives in shadcn apps:
- button
- card
- input
- textarea
- select
- dialog
- sheet
- tabs
- badge
- separator
- checkbox
- switch
- slider
- tooltip
- dropdown-menu
- table

Implementation rule for agents: import shadcn primitives from `@/components/ui/*`, apply the generated CSS variables first, then compose the language-specific recipes from the companion MD. Katagami remains the source of truth; shadcn names are the implementation surface.

## Do's and Don'ts

- Do Bind every saturated colour to one named product role and keep the mapping fixed.
- Do Show colour as a measured vial with its hex coordinate, not as a bare swatch grid.
- Do Keep the field deep ink-charcoal and quiet so a single reading can lead.
- Do Build elevation from frosted material and soft shadow, never from borders.
- Do Pair role colour with a text label or pill, never colour alone.
- Don't Do not spray colour as confetti or give a pane a decorative accent edge with no role.
- Don't Do not add borders, neon glow, or muddy washes.
- Don't Do not let semantic red or amber become visually primary.
- Don't Do not default to a bright silver product console; the dark vault is the identity.
- Don't Do not bury hero subjects so the veil erases them.

### Accessibility

Light ink #ECEFF2 on the ink-charcoal vault and charcoal on saturated readings clear WCAG AA; focus is a visible violet ring plus a soft wash; role colour is always paired with a label, value, or pill; the settled page renders with no JavaScript; respects prefers-reduced-motion.

## Imagery Direction

### Pairs With

frostmark

### Summary

A single luminous pigment specimen — a slender glass vial of glowing concentrated tincture — suspended in a near-black vault, veiled behind layered frosted glass slabs with hairline seams; gouache daubs crest the glass edges as measured colour samples.

### Subjects

- a glowing pigment vial / colour specimen
- a measured swatch suspended in shadow
- a master colour strip read against the dark
- a single luminous reading

### Usage

Full-bleed dark hero with negative space at top for a centred-low headline overlay; charcoal-to-near-black tonal depth; daubs few and placed, never confetti.
shadcn/ui theme
```json
{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "tincture",
  "type": "registry:theme",
  "title": "Tincture shadcn Theme",
  "cssVars": {
    "theme": {},
    "light": {
      "background": "#0E1216",
      "foreground": "#ECEFF2",
      "card": "#161C22",
      "card-foreground": "#ECEFF2",
      "popover": "#161C22",
      "popover-foreground": "#ECEFF2",
      "primary": "#ECEFF2",
      "primary-foreground": "#111111",
      "secondary": "#f4f4f5",
      "secondary-foreground": "#111111",
      "muted": "#8A95A1",
      "muted-foreground": "#ECEFF2",
      "accent": "#C24BE0",
      "accent-foreground": "#ffffff",
      "destructive": "#E5523F",
      "border": "rgba(236,239,242,0.10)",
      "input": "rgba(236,239,242,0.10)",
      "ring": "#C24BE0",
      "chart-1": "#ECEFF2",
      "chart-2": "#f4f4f5",
      "chart-3": "#C24BE0",
      "chart-4": "#7FC81E",
      "chart-5": "#E8A21C",
      "sidebar": "#161C22",
      "sidebar-foreground": "#ECEFF2",
      "sidebar-primary": "#ECEFF2",
      "sidebar-primary-foreground": "#111111",
      "sidebar-accent": "#3FC7E8",
      "sidebar-accent-foreground": "#ffffff",
      "sidebar-border": "rgba(236,239,242,0.10)",
      "sidebar-ring": "#C24BE0",
      "radius": "16px"
    },
    "dark": {
      "background": "#0f1115",
      "foreground": "#f8fafc",
      "card": "#181b22",
      "card-foreground": "#f8fafc",
      "popover": "#181b22",
      "popover-foreground": "#f8fafc",
      "primary": "#ECEFF2",
      "primary-foreground": "#111111",
      "secondary": "#252a33",
      "secondary-foreground": "#f8fafc",
      "muted": "#252a33",
      "muted-foreground": "#a1a1aa",
      "accent": "#C24BE0",
      "accent-foreground": "#ffffff",
      "destructive": "#E5523F",
      "border": "#303642",
      "input": "#303642",
      "ring": "#C24BE0",
      "chart-1": "#ECEFF2",
      "chart-2": "#f4f4f5",
      "chart-3": "#C24BE0",
      "chart-4": "#7FC81E",
      "chart-5": "#E8A21C",
      "sidebar": "#181b22",
      "sidebar-foreground": "#f8fafc",
      "sidebar-primary": "#ECEFF2",
      "sidebar-primary-foreground": "#111111",
      "sidebar-accent": "#C24BE0",
      "sidebar-accent-foreground": "#ffffff",
      "sidebar-border": "#303642",
      "sidebar-ring": "#C24BE0",
      "radius": "16px"
    }
  },
  "meta": {
    "source": "katagami",
    "languageId": "en-019efa8b-fedc-7b53-b645-a940c514ea6b",
    "slug": "tincture",
    "componentManifest": [
      "button",
      "card",
      "input",
      "textarea",
      "select",
      "dialog",
      "sheet",
      "tabs",
      "badge",
      "separator",
      "checkbox",
      "switch",
      "slider",
      "tooltip",
      "dropdown-menu",
      "table"
    ],
    "installCommand": "npx shadcn@latest add button card input textarea select dialog sheet tabs badge separator checkbox switch slider tooltip dropdown-menu table",
    "nativeTokenNames": {
      "colors": [
        "accent",
        "accent_2",
        "accent_3",
        "accent_4",
        "accent_5",
        "bg",
        "border",
        "error",
        "info",
        "muted",
        "on_accent",
        "success",
        "surface",
        "surface_2",
        "text",
        "warning"
      ],
      "typography": [
        "base_size",
        "body_font",
        "google_fonts_url",
        "heading_font",
        "heading_transform",
        "heading_weight",
        "letter_spacing",
        "line_height",
        "mono_font",
        "scale_ratio"
      ],
      "radii": [
        "full",
        "lg",
        "md",
        "none",
        "sm"
      ],
      "shadows": [
        "lg",
        "md",
        "sm"
      ],
      "spacing": [
        "base",
        "scale"
      ],
      "surfaces": [
        "bg_pattern",
        "card_style",
        "treatment"
      ],
      "borders": [
        "accent_width",
        "character",
        "default_width",
        "style"
      ],
      "motion": [
        "duration",
        "easing",
        "philosophy"
      ]
    }
  }
}
```
in the wild

embodiments

bespoke marketing landingopen full page ↗
landing · tincture
DESIGN.md

at a glance

Typography

headline-lgFraunces · 32px · 700

The quick brown fox jumps

headline-mdFraunces · 26px · 600

The quick brown fox jumps

body-mdSpace Grotesk · 17px · 400

The quick brown fox jumps

label-mdIBM Plex Mono · 12px · 600

The quick brown fox jumps

shadcn/ui

implementation kit

built with

Agent-generated

remix lane

try a remix

Keep Tinctureand swap a palette and an art style onto it — the landing & dashboard recolor live. The Studio does the same with all three lanes free.

UI language · fixed
Tincture
Palette
Art style
Landing Page
live preview · recolored + filled
lineage

Family

Evolved from
related

More like this