Quantized Lumen Workbench
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.
specification
philosophy
tokens
borders4 items
- accent width
- 2px
- character
- cool mineral borders define structure; coral and teal appear only as active underplates, tiny badges, and focus steps
- default width
- 1px
- style
- solid hairlines with stepped inset focus outlines
colors12 items
motion3 items
- duration
- 160ms
- easing
- cubic-bezier(0.2, 0.8, 0.2, 1)
- philosophy
- state changes snap along 4px steps using transform and box-shadow; no bounce, no width or padding animation
radii5 items
- full
- 9999px
- lg
- 10px
- md
- 10px
- none
- 0
- sm
- 6px
shadows3 items
- lg
- 0 28px 70px rgba(15,39,51,0.12)
- md
- 0 14px 32px rgba(15,39,51,0.08)
- sm
- 0 1px 0 rgba(15,39,51,0.06)
spacing2 items
- base
- 8px
- scale
- 4, 8, 12, 16, 24, 32, 48, 64
surfaces3 items
- bg pattern
- none by default; no dotted texture and no square grid wallpaper
- card style
- 1px cool hairline bordered cards with committed 10px radius and small clipped pixel notches
- treatment
- flat white and warm-neutral planes with occasional 4px stepped accent underplates
typography8 items
- base size
- 16px
- body font
- Chivo
- google fonts url
- https://fonts.googleapis.com/css2?family=Chivo:wght@400;500;600;700&family=Newsreader:opsz,wght@6..72,600;6..72,700&family=Red+Hat+Mono:wght@500;600&display=swap
- heading font
- Newsreader
- letter spacing
- -0.02em
- line height
- 1.56
- mono font
- Red Hat Mono
- scale ratio
- 1.27
rules
Use one dominant product workbench canvas with a smaller evidence column and a broken alignment strip; avoid equal three-card rows and avoid generic dashboard metric strips.
Balanced density with tight chip clusters at 4-8px and major canvas gaps at 48-64px so proximity creates hierarchy.
Headings use Newsreader for an editorial decision voice, body uses Chivo for clean product reading, and Red Hat Mono is reserved for compact token IDs and pixel badges only.
layout
mobile 375px, tablet 768px, desktop 1200px and above
Desktop uses a 12-column shell with a dominant 7-column canvas, 3-column evidence column, and 2-column tool rail; mobile collapses to a single column while keeping all controls.
Major section gaps use 48-64px while related labels and controls use 4-12px, creating dramatic spacing range without filler decoration.
guidance
- Use only coral and teal as bright accents, assigning coral to decisive creation and teal to verification or information.
- Build pixel influence into icons, badges, corners, and focus states while keeping typography and surfaces contemporary.
- Let unframed whitespace group most content; reserve bordered cards for real decision objects and inputs.
- Use product-specific scenes such as review queues, design QA, palette approval, or compact editorial tools.
- Do not use square-grid backgrounds, dotted textures by default, full rainbow palettes, or retro arcade imagery.
- Do not add colored side rails or one-sided rounded borders to buttons, cards, rows, or panels.
- Do not use bitmap fonts, game HUD framing, generic SaaS dashboards, nested cards, or decorative confetti.
- Do not let semantic colors or tiny charts substitute for the quantized edge and badge grammar.
katagami spec
# Quantized Lumen Workbench ## Philosophy A clean white product language where pixel art is translated into modern decision geometry: tiny quantized badges, stepped focus edges, crisp modular icons, and two bright accents used for product meaning rather than retro nostalgia. Internally compared directions included bitmap-badge minimalism, stepped color calibration, and modular icon workbench; the chosen synthesis combines the most product-useful restraint of calibration with the memorability of tiny pixel artifacts. ### Values - white-space-led product clarity - pixel logic as modern precision rather than nostalgia - two-accent color theory with explicit hierarchy - small authored details that survive palette swaps ### Anti-Values - retro arcade skins, game HUDs, Minecraft blockiness, or bitmap typefaces - square-grid wallpapers, dotted notebook defaults, and decorative side rails on components - rainbow accent sprawl or color used as garnish ### Visual Character - White and limestone surfaces stay mostly flat with 1px cool hairline borders and no default background pattern; identity comes from component edges, not wallpaper. - Cards and panels use a committed 10px geometry with clipped 4px pixel notches on one or two corners via clip-path, never rounded-side color rails. - Primary actions and selected states show stepped two-color underplates made from 4px quantized blocks that sit beneath the control rather than as a side stripe. - Icons, badges, and status marks are built from tiny square modules inside restrained containers while all text remains high-resolution contemporary typography. - Large layout areas are asymmetrical: one dominant working canvas is paired with compact pixel-token evidence chips and a deliberately broken alignment moment. ## Tokens ### Borders - **Accent Width**: 2px - **Character**: cool mineral borders define structure; coral and teal appear only as active underplates, tiny badges, and focus steps - **Default Width**: 1px - **Style**: solid hairlines with stepped inset focus outlines ### Colors | Name | Value | |------|-------| | accent | `#FF5A3D` | | background | `#FCFBF7` | | border | `#D9E0DE` | | error | `#B33A32` | | info | `#008C99` | | muted | `#6E7A7D` | | primary | `#0F2733` | | secondary | `#305661` | | success | `#2E7D5B` | | surface | `#FFFFFF` | | text | `#102027` | | warning | `#A96F12` | ### Motion - **Duration**: 160ms - **Easing**: cubic-bezier(0.2, 0.8, 0.2, 1) - **Philosophy**: state changes snap along 4px steps using transform and box-shadow; no bounce, no width or padding animation ### Radii - **Full**: 9999px - **Lg**: 10px - **Md**: 10px - **None**: 0 - **Sm**: 6px ### Shadows - **Lg**: 0 28px 70px rgba(15,39,51,0.12) - **Md**: 0 14px 32px rgba(15,39,51,0.08) - **Sm**: 0 1px 0 rgba(15,39,51,0.06) ### Spacing - **Base**: 8px - **Scale**: [4,8,12,16,24,32,48,64] ### Surfaces - **Bg Pattern**: none by default; no dotted texture and no square grid wallpaper - **Card Style**: 1px cool hairline bordered cards with committed 10px radius and small clipped pixel notches - **Treatment**: flat white and warm-neutral planes with occasional 4px stepped accent underplates ### Typography - **Base Size**: 16px - **Body Font**: Chivo - **Google Fonts Url**: https://fonts.googleapis.com/css2?family=Chivo:wght@400;500;600;700&family=Newsreader:opsz,wght@6..72,600;6..72,700&family=Red+Hat+Mono:wght@500;600&display=swap - **Heading Font**: Newsreader - **Letter Spacing**: -0.02em - **Line Height**: 1.56 - **Mono Font**: Red Hat Mono - **Scale Ratio**: 1.27 ## Rules ### Composition Use one dominant product workbench canvas with a smaller evidence column and a broken alignment strip; avoid equal three-card rows and avoid generic dashboard metric strips. ### Density Balanced density with tight chip clusters at 4-8px and major canvas gaps at 48-64px so proximity creates hierarchy. ### Hierarchy Headings use Newsreader for an editorial decision voice, body uses Chivo for clean product reading, and Red Hat Mono is reserved for compact token IDs and pixel badges only. ### Signature Patterns - Quantized underplates: active controls sit over a 4px stepped coral or teal shadow plate that peeks from bottom and right edges without becoming a side rail. - Pixel-notched surfaces: selected cards clip one corner in a 4px stair-step polygon, making modern precision visible without blocky overload. - Bitmap evidence badges: tiny 3x3 or 4x2 square-module marks appear next to statuses and labels to show state, never as a repeated background texture. - Stepped focus rings: keyboard focus uses layered 2px outlines offset in 4px increments to express pixel logic through accessibility states. ## Layout ### Breakpoints mobile 375px, tablet 768px, desktop 1200px and above ### Grid Desktop uses a 12-column shell with a dominant 7-column canvas, 3-column evidence column, and 2-column tool rail; mobile collapses to a single column while keeping all controls. ### Whitespace Major section gaps use 48-64px while related labels and controls use 4-12px, creating dramatic spacing range without filler decoration. ## Guidance ### Do - Use only coral and teal as bright accents, assigning coral to decisive creation and teal to verification or information. - Build pixel influence into icons, badges, corners, and focus states while keeping typography and surfaces contemporary. - Let unframed whitespace group most content; reserve bordered cards for real decision objects and inputs. - Use product-specific scenes such as review queues, design QA, palette approval, or compact editorial tools. ### Don't - Do not use square-grid backgrounds, dotted textures by default, full rainbow palettes, or retro arcade imagery. - Do not add colored side rails or one-sided rounded borders to buttons, cards, rows, or panels. - Do not use bitmap fonts, game HUD framing, generic SaaS dashboards, nested cards, or decorative confetti. - Do not let semantic colors or tiny charts substitute for the quantized edge and badge grammar.
DESIGN.md
---
version: "alpha"
name: "Quantized Lumen Workbench"
description: "Agent-curated design language exported from Katagami as DESIGN.md."
colors:
accent: "#FF5A3D"
background: "#FCFBF7"
border: "#D9E0DE"
error: "#B33A32"
info: "#008C99"
muted: "#6E7A7D"
primary: "#0F2733"
secondary: "#305661"
success: "#2E7D5B"
surface: "#FFFFFF"
text: "#102027"
warning: "#A96F12"
typography:
headline-lg:
fontFamily: "Newsreader"
fontSize: "2.048rem"
fontWeight: 700
lineHeight: 1.1
letterSpacing: "-0.02em"
headline-md:
fontFamily: "Newsreader"
fontSize: "1.613rem"
fontWeight: 600
lineHeight: 1.15
letterSpacing: "-0.02em"
body-md:
fontFamily: "Chivo"
fontSize: "16px"
fontWeight: 400
lineHeight: 1.56
letterSpacing: "-0.02em"
label-md:
fontFamily: "Red Hat Mono"
fontSize: "0.75rem"
fontWeight: 600
lineHeight: 1
letterSpacing: "0.08em"
rounded:
full: "9999px"
lg: "10px"
md: "10px"
none: "0px"
sm: "6px"
spacing:
base: "8px"
xs: "4px"
sm: "8px"
md: "12px"
lg: "16px"
xl: "24px"
2xl: "32px"
3xl: "48px"
4xl: "64px"
components:
color-reference-accent:
backgroundColor: "{colors.accent}"
color-reference-background:
backgroundColor: "{colors.background}"
color-reference-border:
backgroundColor: "{colors.border}"
color-reference-error:
backgroundColor: "{colors.error}"
color-reference-info:
backgroundColor: "{colors.info}"
color-reference-muted:
backgroundColor: "{colors.muted}"
color-reference-primary:
backgroundColor: "{colors.primary}"
color-reference-secondary:
backgroundColor: "{colors.secondary}"
color-reference-success:
backgroundColor: "{colors.success}"
color-reference-surface:
backgroundColor: "{colors.surface}"
color-reference-text:
backgroundColor: "{colors.text}"
color-reference-warning:
backgroundColor: "{colors.warning}"
button-primary:
backgroundColor: "{colors.primary}"
textColor: "#ffffff"
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"
---
# Quantized Lumen Workbench
## Overview
A clean white product language where pixel art is translated into modern decision geometry: tiny quantized badges, stepped focus edges, crisp modular icons, and two bright accents used for product meaning rather than retro nostalgia. Internally compared directions included bitmap-badge minimalism, stepped color calibration, and modular icon workbench; the chosen synthesis combines the most product-useful restraint of calibration with the memorability of tiny pixel artifacts.
### Values
- white-space-led product clarity
- pixel logic as modern precision rather than nostalgia
- two-accent color theory with explicit hierarchy
- small authored details that survive palette swaps
### Anti-Values
- retro arcade skins, game HUDs, Minecraft blockiness, or bitmap typefaces
- square-grid wallpapers, dotted notebook defaults, and decorative side rails on components
- rainbow accent sprawl or color used as garnish
### Visual Character
- White and limestone surfaces stay mostly flat with 1px cool hairline borders and no default background pattern; identity comes from component edges, not wallpaper.
- Cards and panels use a committed 10px geometry with clipped 4px pixel notches on one or two corners via clip-path, never rounded-side color rails.
- Primary actions and selected states show stepped two-color underplates made from 4px quantized blocks that sit beneath the control rather than as a side stripe.
- Icons, badges, and status marks are built from tiny square modules inside restrained containers while all text remains high-resolution contemporary typography.
- Large layout areas are asymmetrical: one dominant working canvas is paired with compact pixel-token evidence chips and a deliberately broken alignment moment.
## Colors
Use the YAML color tokens as the normative palette. The prose below names the roles agents should preserve when generating UI.
| Token | Value |
|-------|-------|
| accent | `#FF5A3D` |
| background | `#FCFBF7` |
| border | `#D9E0DE` |
| error | `#B33A32` |
| info | `#008C99` |
| muted | `#6E7A7D` |
| primary | `#0F2733` |
| secondary | `#305661` |
| success | `#2E7D5B` |
| surface | `#FFFFFF` |
| text | `#102027` |
| warning | `#A96F12` |
## Typography
- **Headline-Lg**: Newsreader, 2.048rem, weight 700, line-height 1.1.
- **Headline-Md**: Newsreader, 1.613rem, weight 600, line-height 1.15.
- **Body-Md**: Chivo, 16px, weight 400, line-height 1.56.
- **Label-Md**: Red Hat 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`
### Breakpoints
mobile 375px, tablet 768px, desktop 1200px and above
### Grid
Desktop uses a 12-column shell with a dominant 7-column canvas, 3-column evidence column, and 2-column tool rail; mobile collapses to a single column while keeping all controls.
### Whitespace
Major section gaps use 48-64px while related labels and controls use 4-12px, creating dramatic spacing range without filler decoration.
## Elevation & Depth
### Shadows
- **Lg**: 0 28px 70px rgba(15,39,51,0.12)
- **Md**: 0 14px 32px rgba(15,39,51,0.08)
- **Sm**: 0 1px 0 rgba(15,39,51,0.06)
## Shapes
### Rounded
- **Full**: `9999px`
- **Lg**: `10px`
- **Md**: `10px`
- **None**: `0px`
- **Sm**: `6px`
### Surfaces
- **Bg Pattern**: none by default; no dotted texture and no square grid wallpaper
- **Card Style**: 1px cool hairline bordered cards with committed 10px radius and small clipped pixel notches
- **Treatment**: flat white and warm-neutral planes with occasional 4px stepped accent underplates
### Borders
- **Accent Width**: 2px
- **Character**: cool mineral borders define structure; coral and teal appear only as active underplates, tiny badges, and focus steps
- **Default Width**: 1px
- **Style**: solid hairlines with stepped inset focus outlines
## Components
### Composition
Use one dominant product workbench canvas with a smaller evidence column and a broken alignment strip; avoid equal three-card rows and avoid generic dashboard metric strips.
### Density
Balanced density with tight chip clusters at 4-8px and major canvas gaps at 48-64px so proximity creates hierarchy.
### Hierarchy
Headings use Newsreader for an editorial decision voice, body uses Chivo for clean product reading, and Red Hat Mono is reserved for compact token IDs and pixel badges only.
### Signature Patterns
- Quantized underplates: active controls sit over a 4px stepped coral or teal shadow plate that peeks from bottom and right edges without becoming a side rail.
- Pixel-notched surfaces: selected cards clip one corner in a 4px stair-step polygon, making modern precision visible without blocky overload.
- Bitmap evidence badges: tiny 3x3 or 4x2 square-module marks appear next to statuses and labels to show state, never as a repeated background texture.
- Stepped focus rings: keyboard focus uses layered 2px outlines offset in 4px increments to express pixel logic through accessibility states.
## 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-019e4685-f3ef-7402-8113-a49613f84c1f/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 Use only coral and teal as bright accents, assigning coral to decisive creation and teal to verification or information.
- Do Build pixel influence into icons, badges, corners, and focus states while keeping typography and surfaces contemporary.
- Do Let unframed whitespace group most content; reserve bordered cards for real decision objects and inputs.
- Do Use product-specific scenes such as review queues, design QA, palette approval, or compact editorial tools.
- Don't Do not use square-grid backgrounds, dotted textures by default, full rainbow palettes, or retro arcade imagery.
- Don't Do not add colored side rails or one-sided rounded borders to buttons, cards, rows, or panels.
- Don't Do not use bitmap fonts, game HUD framing, generic SaaS dashboards, nested cards, or decorative confetti.
- Don't Do not let semantic colors or tiny charts substitute for the quantized edge and badge grammar.
shadcn/ui theme
```json
{
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
"name": "quantized-lumen-workbench",
"type": "registry:theme",
"title": "Quantized Lumen Workbench shadcn Theme",
"cssVars": {
"theme": {},
"light": {
"background": "#FCFBF7",
"foreground": "#102027",
"card": "#FFFFFF",
"card-foreground": "#102027",
"popover": "#FFFFFF",
"popover-foreground": "#102027",
"primary": "#0F2733",
"primary-foreground": "#ffffff",
"secondary": "#305661",
"secondary-foreground": "#ffffff",
"muted": "#6E7A7D",
"muted-foreground": "#102027",
"accent": "#FF5A3D",
"accent-foreground": "#ffffff",
"destructive": "#B33A32",
"border": "#D9E0DE",
"input": "#D9E0DE",
"ring": "#FF5A3D",
"chart-1": "#0F2733",
"chart-2": "#305661",
"chart-3": "#FF5A3D",
"chart-4": "#2E7D5B",
"chart-5": "#A96F12",
"sidebar": "#FFFFFF",
"sidebar-foreground": "#102027",
"sidebar-primary": "#0F2733",
"sidebar-primary-foreground": "#ffffff",
"sidebar-accent": "#008C99",
"sidebar-accent-foreground": "#ffffff",
"sidebar-border": "#D9E0DE",
"sidebar-ring": "#FF5A3D",
"radius": "10px"
},
"dark": {
"background": "#0f1115",
"foreground": "#f8fafc",
"card": "#181b22",
"card-foreground": "#f8fafc",
"popover": "#181b22",
"popover-foreground": "#f8fafc",
"primary": "#0F2733",
"primary-foreground": "#ffffff",
"secondary": "#252a33",
"secondary-foreground": "#f8fafc",
"muted": "#252a33",
"muted-foreground": "#a1a1aa",
"accent": "#FF5A3D",
"accent-foreground": "#ffffff",
"destructive": "#B33A32",
"border": "#303642",
"input": "#303642",
"ring": "#FF5A3D",
"chart-1": "#0F2733",
"chart-2": "#305661",
"chart-3": "#FF5A3D",
"chart-4": "#2E7D5B",
"chart-5": "#A96F12",
"sidebar": "#181b22",
"sidebar-foreground": "#f8fafc",
"sidebar-primary": "#0F2733",
"sidebar-primary-foreground": "#ffffff",
"sidebar-accent": "#FF5A3D",
"sidebar-accent-foreground": "#ffffff",
"sidebar-border": "#303642",
"sidebar-ring": "#FF5A3D",
"radius": "10px"
}
},
"meta": {
"source": "katagami",
"languageId": "en-019e4685-f3ef-7402-8113-a49613f84c1f",
"slug": "quantized-lumen-workbench",
"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": {
"borders": [
"accent_width",
"character",
"default_width",
"style"
],
"colors": [
"accent",
"background",
"border",
"error",
"info",
"muted",
"primary",
"secondary",
"success",
"surface",
"text",
"warning"
],
"motion": [
"duration",
"easing",
"philosophy"
],
"radii": [
"full",
"lg",
"md",
"none",
"sm"
],
"shadows": [
"lg",
"md",
"sm"
],
"spacing": [
"base",
"scale"
],
"surfaces": [
"bg_pattern",
"card_style",
"treatment"
],
"typography": [
"base_size",
"body_font",
"google_fonts_url",
"heading_font",
"letter_spacing",
"line_height",
"mono_font",
"scale_ratio"
]
}
}
}
```embodiments
at a glance
Typography
The quick brown fox jumps
The quick brown fox jumps
The quick brown fox jumps
The quick brown fox jumps
Components
Components rendered with this language’s tokens — colors, type, and rounded corners as specified.
Spacing
- base8px
- xs4px
- sm8px
- md12px
- lg16px
- xl24px
- 2xl32px
- 3xl48px
- 4xl64px
Shape
implementation kit
DESIGN.md with shadcn
Copy this when the target app uses shadcn/ui. It packages the Katagami DESIGN.md context with the install list, theme variables, component recipes, preview-shot contract, and starter TSX in one Markdown companion.
advanced implementation filesoptional machine-readable theme, CSS, TSX starter, recipes, and preview contract
npx shadcn@latest add button card input textarea select dialog sheet tabs badge separator checkbox switch slider tooltip dropdown-menu table:root {
--background: #FCFBF7;
--foreground: #102027;
--card: #FFFFFF;
--card-foreground: #102027;
--popover: #FFFFFF;
--popover-foreground: #102027;
--primary: #0F2733;
--primary-foreground: #ffffff;
--secondary: #305661;
--secondary-foreground: #ffffff;
--muted: #6E7A7D;
--muted-foreground: #102027;
--accent: #FF5A3D;
--accent-foreground: #ffffff;
--destructive: #B33A32;
--border: #D9E0DE;
--input: #D9E0DE;
--ring: #FF5A3D;
--chart-1: #0F2733;
--chart-2: #305661;
--chart-3: #FF5A3D;
--chart-4: #2E7D5B;
--chart-5: #A96F12;
--sidebar: #FFFFFF;
--sidebar-foreground: #102027;
--sidebar-primary: #0F2733;
--sidebar-primary-foreground: #ffffff;
--sidebar-accent: #008C99;
--sidebar-accent-foreground: #ffffff;
--sidebar-border: #D9E0DE;
--sidebar-ring: #FF5A3D;
--radius: 10px;
}
.dark {
--background: #0f1115;
--foreground: #f8fafc;
--card: #181b22;
--card-foreground: #f8fafc;
--popover: #181b22;
--popover-foreground: #f8fafc;
--primary: #0F2733;
--primary-foreground: #ffffff;
--secondary: #252a33;
--secondary-foreground: #f8fafc;
--muted: #252a33;
--muted-foreground: #a1a1aa;
--accent: #FF5A3D;
--accent-foreground: #ffffff;
--destructive: #B33A32;
--border: #303642;
--input: #303642;
--ring: #FF5A3D;
--chart-1: #0F2733;
--chart-2: #305661;
--chart-3: #FF5A3D;
--chart-4: #2E7D5B;
--chart-5: #A96F12;
--sidebar: #181b22;
--sidebar-foreground: #f8fafc;
--sidebar-primary: #0F2733;
--sidebar-primary-foreground: #ffffff;
--sidebar-accent: #FF5A3D;
--sidebar-accent-foreground: #ffffff;
--sidebar-border: #303642;
--sidebar-ring: #FF5A3D;
--radius: 10px;
}
import { Badge } from "@/components/ui/badge";
import { Button } from "@/components/ui/button";
import {
Card,
CardContent,
CardDescription,
CardFooter,
CardHeader,
CardTitle,
} from "@/components/ui/card";
import { Input } from "@/components/ui/input";
import { Tabs, TabsList, TabsTrigger } from "@/components/ui/tabs";
export function QuantizedLumenWorkbenchShadcnKit() {
return (
<section className="grid gap-4 rounded-[var(--radius)] border bg-background p-4 text-foreground">
<div className="flex items-start justify-between gap-4">
<div>
<Badge variant="outline">shadcn/ui</Badge>
<h2 className="mt-3 text-2xl font-semibold tracking-tight">Quantized Lumen Workbench</h2>
<p className="mt-1 max-w-xl text-sm text-muted-foreground">
Use the Katagami registry theme, then compose these shadcn primitives
with the language-specific component recipes.
</p>
</div>
<Button>Apply theme</Button>
</div>
<Tabs defaultValue="components">
<TabsList>
<TabsTrigger value="components">Components</TabsTrigger>
<TabsTrigger value="states">States</TabsTrigger>
<TabsTrigger value="export">Export</TabsTrigger>
</TabsList>
</Tabs>
<Card>
<CardHeader>
<CardTitle>Component recipe</CardTitle>
<CardDescription>
Replace this starter content with the agent-authored product scene
from components.md and preview-shots.json.
</CardDescription>
</CardHeader>
<CardContent className="grid gap-3 sm:grid-cols-[1fr_auto]">
<Input defaultValue="Tokenized shadcn surface" aria-label="Recipe name" />
<Button variant="secondary">Preview state</Button>
</CardContent>
<CardFooter className="justify-between">
<Badge>Ready</Badge>
<Button variant="outline">Copy recipe</Button>
</CardFooter>
</Card>
</section>
);
}
{
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
"cssVars": {
"dark": {
"accent": "#FF5A3D",
"accent-foreground": "#ffffff",
"background": "#0f1115",
"border": "#303642",
"card": "#181b22",
"card-foreground": "#f8fafc",
"chart-1": "#0F2733",
"chart-2": "#305661",
"chart-3": "#FF5A3D",
"chart-4": "#2E7D5B",
"chart-5": "#A96F12",
"destructive": "#B33A32",
"foreground": "#f8fafc",
"input": "#303642",
"muted": "#252a33",
"muted-foreground": "#a1a1aa",
"popover": "#181b22",
"popover-foreground": "#f8fafc",
"primary": "#0F2733",
"primary-foreground": "#ffffff",
"radius": "10px",
"ring": "#FF5A3D",
"secondary": "#252a33",
"secondary-foreground": "#f8fafc",
"sidebar": "#181b22",
"sidebar-accent": "#FF5A3D",
"sidebar-accent-foreground": "#ffffff",
"sidebar-border": "#303642",
"sidebar-foreground": "#f8fafc",
"sidebar-primary": "#0F2733",
"sidebar-primary-foreground": "#ffffff",
"sidebar-ring": "#FF5A3D"
},
"light": {
"accent": "#FF5A3D",
"accent-foreground": "#ffffff",
"background": "#FCFBF7",
"border": "#D9E0DE",
"card": "#FFFFFF",
"card-foreground": "#102027",
"chart-1": "#0F2733",
"chart-2": "#305661",
"chart-3": "#FF5A3D",
"chart-4": "#2E7D5B",
"chart-5": "#A96F12",
"destructive": "#B33A32",
"foreground": "#102027",
"input": "#D9E0DE",
"muted": "#6E7A7D",
"muted-foreground": "#102027",
"popover": "#FFFFFF",
"popover-foreground": "#102027",
"primary": "#0F2733",
"primary-foreground": "#ffffff",
"radius": "10px",
"ring": "#FF5A3D",
"secondary": "#305661",
"secondary-foreground": "#ffffff",
"sidebar": "#FFFFFF",
"sidebar-accent": "#008C99",
"sidebar-accent-foreground": "#ffffff",
"sidebar-border": "#D9E0DE",
"sidebar-foreground": "#102027",
"sidebar-primary": "#0F2733",
"sidebar-primary-foreground": "#ffffff",
"sidebar-ring": "#FF5A3D"
},
"theme": {}
},
"meta": {
"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",
"languageId": "en-019e4685-f3ef-7402-8113-a49613f84c1f",
"nativeTokenNames": {
"borders": [
"accent_width",
"character",
"default_width",
"style"
],
"colors": [
"accent",
"background",
"border",
"error",
"info",
"muted",
"primary",
"secondary",
"success",
"surface",
"text",
"warning"
],
"motion": [
"duration",
"easing",
"philosophy"
],
"radii": [
"full",
"lg",
"md",
"none",
"sm"
],
"shadows": [
"lg",
"md",
"sm"
],
"spacing": [
"base",
"scale"
],
"surfaces": [
"bg_pattern",
"card_style",
"treatment"
],
"typography": [
"base_size",
"body_font",
"google_fonts_url",
"heading_font",
"letter_spacing",
"line_height",
"mono_font",
"scale_ratio"
]
},
"slug": "quantized-lumen-workbench",
"source": "katagami"
},
"name": "quantized-lumen-workbench",
"title": "Quantized Lumen Workbench shadcn Theme",
"type": "registry:theme"
}
# Quantized Lumen Workbench shadcn/ui Components
Artifact: `component-recipes-v1`
Author: `katagami-ui-projection`
Language ID: `en-019e4685-f3ef-7402-8113-a49613f84c1f`
Slug: `quantized-lumen-workbench`
## Intent
A clean white product language where pixel art is translated into modern decision geometry: tiny quantized badges, stepped focus edges, crisp modular icons, and two bright accents used for product meaning rather than retro nostalgia. Internally compared directions included bitmap-badge minimalism, stepped color calibration, and modular icon workbench; the chosen synthesis combines the most product-useful restraint of calibration with the memorability of tiny pixel artifacts.
## Required primitives
- button
- card
- input
- textarea
- select
- dialog
- sheet
- tabs
- badge
- separator
- checkbox
- switch
- slider
- tooltip
- dropdown-menu
- table
Install with `npx shadcn@latest add button card input textarea select dialog sheet tabs badge separator checkbox switch slider tooltip dropdown-menu table`.
## Token cues
Colors:
{
"accent": "#FF5A3D",
"background": "#FCFBF7",
"border": "#D9E0DE",
"error": "#B33A32",
"info": "#008C99",
"muted": "#6E7A7D",
"primary": "#0F2733",
"secondary": "#305661",
"success": "#2E7D5B",
"surface": "#FFFFFF",
"text": "#102027",
"warning": "#A96F12"
}
Typography:
{
"base_size": "16px",
"body_font": "Chivo",
"google_fonts_url": "https://fonts.googleapis.com/css2?family=Chivo:wght@400;500;600;700&family=Newsreader:opsz,wght@6..72,600;6..72,700&family=Red+Hat+Mono:wght@500;600&display=swap",
"heading_font": "Newsreader",
"letter_spacing": "-0.02em",
"line_height": 1.56,
"mono_font": "Red Hat Mono",
"scale_ratio": 1.27
}
## Visual character to preserve
- White and limestone surfaces stay mostly flat with 1px cool hairline borders and no default background pattern; identity comes from component edges, not wallpaper.
- Cards and panels use a committed 10px geometry with clipped 4px pixel notches on one or two corners via clip-path, never rounded-side color rails.
- Primary actions and selected states show stepped two-color underplates made from 4px quantized blocks that sit beneath the control rather than as a side stripe.
- Icons, badges, and status marks are built from tiny square modules inside restrained containers while all text remains high-resolution contemporary typography.
- Large layout areas are asymmetrical: one dominant working canvas is paired with compact pixel-token evidence chips and a deliberately broken alignment moment.
## ShadSync visual profile
{
"family": "paper-collage",
"material": "paper",
"contour": "default",
"border": "solid",
"underlay": true,
"grain": true,
"stickerBadges": true,
"motion": "still",
"density": "dense",
"accents": [
"primary",
"accent",
"secondary",
"muted"
]
}
## Signature component recipes
### Button
Use `Button` for primary, secondary, outline, and ghost actions. Primary actions must expose the language's strongest contrast pair, while secondary and ghost actions should preserve the surface treatment instead of falling back to default neutral SaaS styling.
### Card
Use `Card`, `CardHeader`, `CardContent`, `CardFooter`, and `CardAction` as the main composition frame. Cards should demonstrate the language's surface, border, hierarchy, and density rules rather than appearing as generic rounded rectangles.
### Input and Textarea
Use `Input` and `Textarea` with visible focus rings, field labels, validation states, and the language's rhythm. Forms should show real product content, not placeholder-only controls.
### Select, Tabs, and Table
Use `Select`, `Tabs`, and `Table` to prove navigation, filtering, and dense data states. The table should show row rhythm, separators, hover/focus states, and an empty or status state when the language calls for it.
### Dialog and Sheet
Use `Dialog` for centered decisions and `Sheet` for contextual editing. Both should inherit the language's spacing, border, overlay, and motion rules.
## Preview shots
- `application-shell`: dashboard or workspace shell with navigation, cards, forms, and state badges.
- `detail-editor`: focused editing flow using input, textarea, select, switch/checkbox, dialog or sheet, and action buttons.
- `data-operations`: table-heavy operational view with tabs, dropdown menu affordances, badges, and destructive/empty states.
- Each preview shot must include a renderable `scene` payload with concrete headline, description, actions, and rows/fields/stats for the UI preview.
## Implementation contract
- Start from local `ui/src/components/ui` shadcn-style primitives; do not create a second component system.
- Apply `/katagami/shadcn/quantized-lumen-workbench/registry-theme.json` variables, then use these recipes for composition and state design.
- Preserve Katagami token names as source metadata; shadcn semantic names are only the export surface.
- Do: Use only coral and teal as bright accents, assigning coral to decisive creation and teal to verification or information.; Build pixel influence into icons, badges, corners, and focus states while keeping typography and surfaces contemporary.; Let unframed whitespace group most content; reserve bordered cards for real decision objects and inputs.; Use product-specific scenes such as review queues, design QA, palette approval, or compact editorial tools.
- Do not: Do not use square-grid backgrounds, dotted textures by default, full rainbow palettes, or retro arcade imagery.; Do not add colored side rails or one-sided rounded borders to buttons, cards, rows, or panels.; Do not use bitmap fonts, game HUD framing, generic SaaS dashboards, nested cards, or decorative confetti.; Do not let semantic colors or tiny charts substitute for the quantized edge and badge grammar.
## Copy-paste component example
This generated starter proves the import shape. Production Katagami agents should replace it with a language-specific product composition.
```tsx
import { Badge } from "@/components/ui/badge";
import { Button } from "@/components/ui/button";
import {
Card,
CardContent,
CardDescription,
CardFooter,
CardHeader,
CardTitle,
} from "@/components/ui/card";
import { Input } from "@/components/ui/input";
import { Tabs, TabsList, TabsTrigger } from "@/components/ui/tabs";
export function QuantizedLumenWorkbenchShadcnKit() {
return (
<section className="grid gap-4 rounded-[var(--radius)] border bg-background p-4 text-foreground">
<div className="flex items-start justify-between gap-4">
<div>
<Badge variant="outline">shadcn/ui</Badge>
<h2 className="mt-3 text-2xl font-semibold tracking-tight">Quantized Lumen Workbench</h2>
<p className="mt-1 max-w-xl text-sm text-muted-foreground">
Use the Katagami registry theme, then compose these shadcn primitives
with the language-specific component recipes.
</p>
</div>
<Button>Apply theme</Button>
</div>
<Tabs defaultValue="components">
<TabsList>
<TabsTrigger value="components">Components</TabsTrigger>
<TabsTrigger value="states">States</TabsTrigger>
<TabsTrigger value="export">Export</TabsTrigger>
</TabsList>
</Tabs>
<Card>
<CardHeader>
<CardTitle>Component recipe</CardTitle>
<CardDescription>
Replace this starter content with the agent-authored product scene
from components.md and preview-shots.json.
</CardDescription>
</CardHeader>
<CardContent className="grid gap-3 sm:grid-cols-[1fr_auto]">
<Input defaultValue="Tokenized shadcn surface" aria-label="Recipe name" />
<Button variant="secondary">Preview state</Button>
</CardContent>
<CardFooter className="justify-between">
<Badge>Ready</Badge>
<Button variant="outline">Copy recipe</Button>
</CardFooter>
</Card>
</section>
);
}
```
## Layout notes
{
"breakpoints": "mobile 375px, tablet 768px, desktop 1200px and above",
"grid": "Desktop uses a 12-column shell with a dominant 7-column canvas, 3-column evidence column, and 2-column tool rail; mobile collapses to a single column while keeping all controls.",
"whitespace": "Major section gaps use 48-64px while related labels and controls use 4-12px, creating dramatic spacing range without filler decoration."
}
{
"artifact": "katagami:shadcn-preview-shots",
"version": "preview-shots-v1",
"generator": "katagami-ui-compatibility-projection",
"generatedBy": "katagami-ui-projection",
"requiresVisualProfile": true,
"schema": "katagami:shadcn-preview-shots/renderable-v1",
"renderable": true,
"language": {
"id": "en-019e4685-f3ef-7402-8113-a49613f84c1f",
"name": "Quantized Lumen Workbench",
"slug": "quantized-lumen-workbench"
},
"installCommand": "npx shadcn@latest add button card input textarea select dialog sheet tabs badge separator checkbox switch slider tooltip dropdown-menu table",
"primitives": [
"button",
"card",
"input",
"textarea",
"select",
"dialog",
"sheet",
"tabs",
"badge",
"separator",
"checkbox",
"switch",
"slider",
"tooltip",
"dropdown-menu",
"table"
],
"identityNotes": [
"White and limestone surfaces stay mostly flat with 1px cool hairline borders and no default background pattern; identity comes from component edges, not wallpaper.",
"Cards and panels use a committed 10px geometry with clipped 4px pixel notches on one or two corners via clip-path, never rounded-side color rails.",
"Primary actions and selected states show stepped two-color underplates made from 4px quantized blocks that sit beneath the control rather than as a side stripe.",
"Icons, badges, and status marks are built from tiny square modules inside restrained containers while all text remains high-resolution contemporary typography.",
"Large layout areas are asymmetrical: one dominant working canvas is paired with compact pixel-token evidence chips and a deliberately broken alignment moment."
],
"visualProfile": {
"family": "paper-collage",
"material": "paper",
"contour": "default",
"border": "solid",
"underlay": true,
"grain": true,
"stickerBadges": true,
"motion": "still",
"density": "dense",
"accents": [
"primary",
"accent",
"secondary",
"muted"
]
},
"shots": [
{
"id": "application-shell",
"title": "Application shell",
"viewport": "desktop",
"primitives": [
"button",
"card",
"input",
"select",
"tabs",
"badge",
"separator",
"table"
],
"composition": "A real product workspace with navigation, summary cards, filtering controls, and one dense content region.",
"mustShow": [
"primary and secondary actions",
"card hierarchy",
"filterable state",
"table or list density"
],
"avoid": [
"component inventory walls",
"placeholder-only content",
"generic rounded SaaS chrome"
],
"scene": {
"eyebrow": "workspace spread",
"headline": "Quantized Lumen Workbench launch room",
"description": "A product team workspace where navigation, filters, metrics, and dense rows carry the language's visible structure.",
"primaryAction": "Apply theme",
"secondaryAction": "Review states",
"stats": [
{
"label": "components",
"value": "16",
"tone": "accent"
},
{
"label": "states",
"value": "ready"
},
{
"label": "density",
"value": "balanced",
"tone": "warning"
}
],
"rows": [
{
"label": "Primary flow",
"value": "mapped",
"status": "active"
},
{
"label": "Token coverage",
"value": "semantic",
"status": "synced"
},
{
"label": "Responsive proof",
"value": "queued",
"status": "review"
}
],
"statuses": [
"Active",
"Synced",
"Draft"
]
}
},
{
"id": "detail-editor",
"title": "Detail editor",
"viewport": "tablet",
"primitives": [
"button",
"card",
"input",
"textarea",
"select",
"checkbox",
"switch",
"slider",
"dialog",
"sheet"
],
"composition": "A focused editing flow with form fields, validation, confirmation, and a contextual side panel.",
"mustShow": [
"focus ring",
"error or destructive state",
"dialog or sheet treatment",
"written guidance content"
],
"avoid": [
"unstyled browser controls",
"floating cards inside cards",
"missing labels"
],
"scene": {
"eyebrow": "editing flow",
"headline": "Language recipe editor",
"description": "A focused form proving labels, validation, toggles, panel rhythm, and action hierarchy.",
"primaryAction": "Save recipe",
"secondaryAction": "Open sheet",
"fields": [
{
"label": "Component family",
"value": "Narrative cards"
},
{
"label": "State treatment",
"value": "Visible focus + validation"
},
{
"label": "Motion",
"value": "Small lift, no opacity-only fade"
}
],
"statuses": [
"Focus",
"Invalid",
"Confirmed"
]
}
},
{
"id": "data-operations",
"title": "Data operations",
"viewport": "mobile",
"primitives": [
"button",
"tabs",
"badge",
"dropdown-menu",
"table",
"tooltip",
"separator"
],
"composition": "A compact operational view proving row rhythm, stacked actions, menu states, badges, and empty/destructive states.",
"mustShow": [
"responsive reflow",
"dense row styling",
"menu affordance",
"status badge system"
],
"avoid": [
"desktop-only tables",
"text overflow",
"default shadcn spacing without Katagami character"
],
"scene": {
"eyebrow": "operations",
"headline": "Compact review queue",
"description": "A narrow viewport scene with rows, menus, tooltips, badges, and destructive affordances.",
"primaryAction": "Resolve",
"secondaryAction": "Filter",
"rows": [
{
"label": "Button hierarchy",
"value": "approved",
"status": "ok"
},
{
"label": "Table rhythm",
"value": "needs pass",
"status": "watch"
},
{
"label": "Empty state",
"value": "designed",
"status": "done"
}
],
"statuses": [
"Queued",
"Blocked",
"Done"
]
}
}
],
"componentRecipes": [
{
"primitive": "button",
"intent": "Prove action hierarchy, focus, disabled, and destructive states."
},
{
"primitive": "card",
"intent": "Carry the language surface, border, elevation, and density rules."
},
{
"primitive": "input",
"intent": "Show labels, focus rings, validation, and spacing rhythm."
},
{
"primitive": "textarea",
"intent": "Show longer guidance, validation copy, and writing density."
},
{
"primitive": "select",
"intent": "Show filtering, selection contrast, and menu trigger styling."
},
{
"primitive": "dialog",
"intent": "Show centered decision states and overlay treatment."
},
{
"primitive": "sheet",
"intent": "Show contextual side panels and responsive editing."
},
{
"primitive": "tabs",
"intent": "Show navigational structure and active/inactive contrast."
},
{
"primitive": "badge",
"intent": "Show compact status vocabulary and semantic colors."
},
{
"primitive": "separator",
"intent": "Show section rhythm without generic gray dividers."
},
{
"primitive": "checkbox",
"intent": "Show binary selection with visible focus and checked states."
},
{
"primitive": "switch",
"intent": "Show settings toggles and on/off contrast."
},
{
"primitive": "slider",
"intent": "Show numeric adjustment with track/thumb styling."
},
{
"primitive": "tooltip",
"intent": "Show concise explanation styling above compact controls."
},
{
"primitive": "dropdown-menu",
"intent": "Show action menus, destructive items, and grouped choices."
},
{
"primitive": "table",
"intent": "Show dense operational data, separators, row states, and responsive behavior."
}
],
"qualityRules": {
"do": [
"Use only coral and teal as bright accents, assigning coral to decisive creation and teal to verification or information.",
"Build pixel influence into icons, badges, corners, and focus states while keeping typography and surfaces contemporary.",
"Let unframed whitespace group most content; reserve bordered cards for real decision objects and inputs.",
"Use product-specific scenes such as review queues, design QA, palette approval, or compact editorial tools."
],
"dont": [
"Do not use square-grid backgrounds, dotted textures by default, full rainbow palettes, or retro arcade imagery.",
"Do not add colored side rails or one-sided rounded borders to buttons, cards, rows, or panels.",
"Do not use bitmap fonts, game HUD framing, generic SaaS dashboards, nested cards, or decorative confetti.",
"Do not let semantic colors or tiny charts substitute for the quantized edge and badge grammar."
]
}
}