Decorated Terminal Shed
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
- 4px
- character
- architectural black outlines, exposed seams, route-tag notches, and square registration corners
- default width
- 2px
- style
- solid with occasional double-rule dividers
colors12 items
motion3 items
- duration
- 140ms
- easing
- steps(2, jump-end)
- philosophy
- motion behaves like terminal state changes and sign relays: short stepped shifts, no liquid easing or cinematic glow
radii5 items
- full
- 9999px
- lg
- 4px
- md
- 2px
- none
- 0
- sm
- 0
shadows3 items
- lg
- 10px 10px 0 #111111
- md
- 6px 6px 0 #111111
- sm
- 3px 3px 0 #111111
spacing2 items
- base
- 8px
- scale
- 4, 8, 12, 16, 24, 32, 48, 64
surfaces3 items
- bg pattern
- repeating-linear-gradient(90deg, rgba(17,17,17,.045) 0 1px, transparent 1px 32px), repeating-linear-gradient(0deg, rgba(17,17,17,.03) 0 1px, transparent 1px 24px)
- card style
- thick black bordered rectangular shed with offset symbolic sign plate
- treatment
- matte warm monochrome slabs with tiny registration ticks and scanline underlays
typography8 items
- base size
- 16px
- body font
- IBM Plex Sans
- google fonts url
- https://fonts.googleapis.com/css2?family=Archivo:wdth,wght@62,700;62,900&family=IBM+Plex+Mono:wght@400;500;600&family=IBM+Plex+Sans:wght@400;500;600;700&display=swap
- heading font
- Archivo ExtraCondensed
- letter spacing
- -0.015em
- line height
- 1.45
- mono font
- IBM Plex Mono
- scale ratio
- 1.22
rules
Compose screens as a decorated terminal building: a rational rectangular shell, explicit gutters, and symbolic sign layers attached to edges and junctions.
Moderately dense, like an operations console: many labels and states are allowed, but every block needs a clear owner, route, and action.
Primary work areas stay quiet and readable; signage, route labels, and neon appear at navigation decisions, status changes, and command affordances.
layout
desktop 1200+, tablet 768-1199 with two-column operations stack, mobile under 640 as single-column route feed with rails becoming horizontal.
12-column desktop grid with 8px base gutters; modules snap to columns but sign plates may offset by one spacing unit for decorated-shed tension.
Whitespace is functional margin around command zones, not luxury emptiness; dense labels cluster at edges while reading areas retain 16-24px internal padding.
guidance
- Use black and warm white as the system shell and reserve acid green for active wayfinding or calls to action.
- Attach symbolic labels to structural edges so decoration explains product state or navigation.
- Keep manga and kanji references abstract, operational, and respectful rather than literal costume.
- Let typography fragment at secondary layers while preserving clear body text and form labels.
- Do not add generic cyberpunk gradients, blue glow, chrome, or rain-soaked neon atmosphere.
- Do not scatter Memphis shapes randomly; every plate, mark, or number must identify a route, state, or module.
- Do not soften the language into standard rounded SaaS cards.
- Do not use fake readable Japanese text; use abstract marks, codes, and real English product labels.
katagami spec
# Decorated Terminal Shed ## Philosophy Decorated Terminal Shed treats an agentic software interface like a plain monochrome service building covered in meaningful sign layers: kanji-like operational marks, terminal labels, route numbers, and sparse neon wayfinding. It borrows Venturi and Scott Brown's decorated-shed logic without kitsch, Cranbrook-style typographic friction without illegibility, and manga panel discipline without cosplay. ### Values - symbol-bearing surfaces over decorative skins - legible complexity with operational hierarchy - monochrome restraint interrupted only by navigational neon - vernacular signage translated into product grammar - technical density that still feels usable ### Anti-Values - generic cyberpunk glow and purple-blue gradients - flat Memphis pastiche with random shapes - AI collage clutter with no route logic - soft SaaS cards detached from the concept ### Visual Character - Use a black-white-shell palette with one acidic green accent reserved for active routes, primary actions, focus rings, and live status marks. - Build the page from heavy bordered rectangular sheds, offset sign plates, and exposed grid gutters rather than floating glass or soft cards. - Layer vertical micro-label rails, route-number pills, and kanji-like SVG stamps at panel edges while preserving readable primary content zones. - Apply terminal scanline and registration cross patterns as low-contrast CSS backgrounds on surfaces, never as full-screen cyberpunk texture. - Set hierarchy with condensed grotesque headings, pragmatic sans body text, and monospace command labels with tight uppercase tracking. ## Tokens ### Borders - **Accent Width**: 4px - **Character**: architectural black outlines, exposed seams, route-tag notches, and square registration corners - **Default Width**: 2px - **Style**: solid with occasional double-rule dividers ### Colors | Name | Value | |------|-------| | accent | `#B7FF2A` | | background | `#F7F4EA` | | border | `#111111` | | error | `#D41111` | | info | `#005F99` | | muted | `#6B685F` | | primary | `#0B0B0B` | | secondary | `#F4F1E8` | | success | `#2F8F1F` | | surface | `#FFFDF5` | | text | `#111111` | | warning | `#B88600` | ### Motion - **Duration**: 140ms - **Easing**: steps(2, jump-end) - **Philosophy**: motion behaves like terminal state changes and sign relays: short stepped shifts, no liquid easing or cinematic glow ### Radii - **Full**: 9999px - **Lg**: 4px - **Md**: 2px - **None**: 0 - **Sm**: 0 ### Shadows - **Lg**: 10px 10px 0 #111111 - **Md**: 6px 6px 0 #111111 - **Sm**: 3px 3px 0 #111111 ### Spacing - **Base**: 8px - **Scale**: [4,8,12,16,24,32,48,64] ### Surfaces - **Bg Pattern**: repeating-linear-gradient(90deg, rgba(17,17,17,.045) 0 1px, transparent 1px 32px), repeating-linear-gradient(0deg, rgba(17,17,17,.03) 0 1px, transparent 1px 24px) - **Card Style**: thick black bordered rectangular shed with offset symbolic sign plate - **Treatment**: matte warm monochrome slabs with tiny registration ticks and scanline underlays ### Typography - **Base Size**: 16px - **Body Font**: IBM Plex Sans - **Google Fonts Url**: https://fonts.googleapis.com/css2?family=Archivo:wdth,wght@62,700;62,900&family=IBM+Plex+Mono:wght@400;500;600&family=IBM+Plex+Sans:wght@400;500;600;700&display=swap - **Heading Font**: Archivo ExtraCondensed - **Letter Spacing**: -0.015em - **Line Height**: 1.45 - **Mono Font**: IBM Plex Mono - **Scale Ratio**: 1.22 ## Rules ### Composition Compose screens as a decorated terminal building: a rational rectangular shell, explicit gutters, and symbolic sign layers attached to edges and junctions. ### Density Moderately dense, like an operations console: many labels and states are allowed, but every block needs a clear owner, route, and action. ### Hierarchy Primary work areas stay quiet and readable; signage, route labels, and neon appear at navigation decisions, status changes, and command affordances. ### Signature Patterns - Decorated-shed cards: plain monochrome containers receive offset top-left sign plates with route numbers and vertical operational marks. - Kanji-like system stamps are drawn as abstract SVG line clusters and placed as semantic badges, never as fake readable language. - Terminal route rails use rotated monospace labels, double-rule borders, and acid-green active segments to guide navigation. - Cranbrook-informed type layering appears as clipped oversized numerals behind modules, kept low contrast so content remains primary. - Controls use hard black outlines, square corners, and stepped neon focus states to make interactivity visible without generic brutalism. ## Layout ### Breakpoints desktop 1200+, tablet 768-1199 with two-column operations stack, mobile under 640 as single-column route feed with rails becoming horizontal. ### Grid 12-column desktop grid with 8px base gutters; modules snap to columns but sign plates may offset by one spacing unit for decorated-shed tension. ### Whitespace Whitespace is functional margin around command zones, not luxury emptiness; dense labels cluster at edges while reading areas retain 16-24px internal padding. ## Guidance ### Do - Use black and warm white as the system shell and reserve acid green for active wayfinding or calls to action. - Attach symbolic labels to structural edges so decoration explains product state or navigation. - Keep manga and kanji references abstract, operational, and respectful rather than literal costume. - Let typography fragment at secondary layers while preserving clear body text and form labels. ### Don't - Do not add generic cyberpunk gradients, blue glow, chrome, or rain-soaked neon atmosphere. - Do not scatter Memphis shapes randomly; every plate, mark, or number must identify a route, state, or module. - Do not soften the language into standard rounded SaaS cards. - Do not use fake readable Japanese text; use abstract marks, codes, and real English product labels.
DESIGN.md
---
version: "alpha"
name: "Decorated Terminal Shed"
description: "Agent-curated design language exported from Katagami as DESIGN.md."
colors:
accent: "#B7FF2A"
background: "#F7F4EA"
border: "#111111"
error: "#D41111"
info: "#005F99"
muted: "#6B685F"
primary: "#0B0B0B"
secondary: "#F4F1E8"
success: "#2F8F1F"
surface: "#FFFDF5"
text: "#111111"
warning: "#B88600"
typography:
headline-lg:
fontFamily: "Archivo ExtraCondensed"
fontSize: "1.816rem"
fontWeight: 700
lineHeight: 1.1
letterSpacing: "-0.015em"
headline-md:
fontFamily: "Archivo ExtraCondensed"
fontSize: "1.488rem"
fontWeight: 600
lineHeight: 1.15
letterSpacing: "-0.015em"
body-md:
fontFamily: "IBM Plex Sans"
fontSize: "16px"
fontWeight: 400
lineHeight: 1.45
letterSpacing: "-0.015em"
label-md:
fontFamily: "IBM Plex Mono"
fontSize: "0.75rem"
fontWeight: 600
lineHeight: 1
letterSpacing: "0.08em"
rounded:
full: "9999px"
lg: "4px"
md: "2px"
none: "0px"
sm: "0px"
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"
---
# Decorated Terminal Shed
## Overview
Decorated Terminal Shed treats an agentic software interface like a plain monochrome service building covered in meaningful sign layers: kanji-like operational marks, terminal labels, route numbers, and sparse neon wayfinding. It borrows Venturi and Scott Brown's decorated-shed logic without kitsch, Cranbrook-style typographic friction without illegibility, and manga panel discipline without cosplay.
### Values
- symbol-bearing surfaces over decorative skins
- legible complexity with operational hierarchy
- monochrome restraint interrupted only by navigational neon
- vernacular signage translated into product grammar
- technical density that still feels usable
### Anti-Values
- generic cyberpunk glow and purple-blue gradients
- flat Memphis pastiche with random shapes
- AI collage clutter with no route logic
- soft SaaS cards detached from the concept
### Visual Character
- Use a black-white-shell palette with one acidic green accent reserved for active routes, primary actions, focus rings, and live status marks.
- Build the page from heavy bordered rectangular sheds, offset sign plates, and exposed grid gutters rather than floating glass or soft cards.
- Layer vertical micro-label rails, route-number pills, and kanji-like SVG stamps at panel edges while preserving readable primary content zones.
- Apply terminal scanline and registration cross patterns as low-contrast CSS backgrounds on surfaces, never as full-screen cyberpunk texture.
- Set hierarchy with condensed grotesque headings, pragmatic sans body text, and monospace command labels with tight uppercase tracking.
## 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 | `#B7FF2A` |
| background | `#F7F4EA` |
| border | `#111111` |
| error | `#D41111` |
| info | `#005F99` |
| muted | `#6B685F` |
| primary | `#0B0B0B` |
| secondary | `#F4F1E8` |
| success | `#2F8F1F` |
| surface | `#FFFDF5` |
| text | `#111111` |
| warning | `#B88600` |
## Typography
- **Headline-Lg**: Archivo ExtraCondensed, 1.816rem, weight 700, line-height 1.1.
- **Headline-Md**: Archivo ExtraCondensed, 1.488rem, weight 600, line-height 1.15.
- **Body-Md**: IBM Plex Sans, 16px, weight 400, line-height 1.45.
- **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`
### Breakpoints
desktop 1200+, tablet 768-1199 with two-column operations stack, mobile under 640 as single-column route feed with rails becoming horizontal.
### Grid
12-column desktop grid with 8px base gutters; modules snap to columns but sign plates may offset by one spacing unit for decorated-shed tension.
### Whitespace
Whitespace is functional margin around command zones, not luxury emptiness; dense labels cluster at edges while reading areas retain 16-24px internal padding.
## Elevation & Depth
### Shadows
- **Lg**: 10px 10px 0 #111111
- **Md**: 6px 6px 0 #111111
- **Sm**: 3px 3px 0 #111111
## Shapes
### Rounded
- **Full**: `9999px`
- **Lg**: `4px`
- **Md**: `2px`
- **None**: `0px`
- **Sm**: `0px`
### Surfaces
- **Bg Pattern**: repeating-linear-gradient(90deg, rgba(17,17,17,.045) 0 1px, transparent 1px 32px), repeating-linear-gradient(0deg, rgba(17,17,17,.03) 0 1px, transparent 1px 24px)
- **Card Style**: thick black bordered rectangular shed with offset symbolic sign plate
- **Treatment**: matte warm monochrome slabs with tiny registration ticks and scanline underlays
### Borders
- **Accent Width**: 4px
- **Character**: architectural black outlines, exposed seams, route-tag notches, and square registration corners
- **Default Width**: 2px
- **Style**: solid with occasional double-rule dividers
## Components
### Composition
Compose screens as a decorated terminal building: a rational rectangular shell, explicit gutters, and symbolic sign layers attached to edges and junctions.
### Density
Moderately dense, like an operations console: many labels and states are allowed, but every block needs a clear owner, route, and action.
### Hierarchy
Primary work areas stay quiet and readable; signage, route labels, and neon appear at navigation decisions, status changes, and command affordances.
### Signature Patterns
- Decorated-shed cards: plain monochrome containers receive offset top-left sign plates with route numbers and vertical operational marks.
- Kanji-like system stamps are drawn as abstract SVG line clusters and placed as semantic badges, never as fake readable language.
- Terminal route rails use rotated monospace labels, double-rule borders, and acid-green active segments to guide navigation.
- Cranbrook-informed type layering appears as clipped oversized numerals behind modules, kept low contrast so content remains primary.
- Controls use hard black outlines, square corners, and stepped neon focus states to make interactivity visible without generic brutalism.
## 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-019e8a06-93fd-7e83-94f3-27f1491ac377/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 black and warm white as the system shell and reserve acid green for active wayfinding or calls to action.
- Do Attach symbolic labels to structural edges so decoration explains product state or navigation.
- Do Keep manga and kanji references abstract, operational, and respectful rather than literal costume.
- Do Let typography fragment at secondary layers while preserving clear body text and form labels.
- Don't Do not add generic cyberpunk gradients, blue glow, chrome, or rain-soaked neon atmosphere.
- Don't Do not scatter Memphis shapes randomly; every plate, mark, or number must identify a route, state, or module.
- Don't Do not soften the language into standard rounded SaaS cards.
- Don't Do not use fake readable Japanese text; use abstract marks, codes, and real English product labels.
shadcn/ui theme
```json
{
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
"name": "decorated-terminal-shed",
"type": "registry:theme",
"title": "Decorated Terminal Shed shadcn Theme",
"cssVars": {
"theme": {},
"light": {
"background": "#F7F4EA",
"foreground": "#111111",
"card": "#FFFDF5",
"card-foreground": "#111111",
"popover": "#FFFDF5",
"popover-foreground": "#111111",
"primary": "#0B0B0B",
"primary-foreground": "#ffffff",
"secondary": "#F4F1E8",
"secondary-foreground": "#111111",
"muted": "#6B685F",
"muted-foreground": "#111111",
"accent": "#B7FF2A",
"accent-foreground": "#111111",
"destructive": "#D41111",
"border": "#111111",
"input": "#111111",
"ring": "#B7FF2A",
"chart-1": "#0B0B0B",
"chart-2": "#F4F1E8",
"chart-3": "#B7FF2A",
"chart-4": "#2F8F1F",
"chart-5": "#B88600",
"sidebar": "#FFFDF5",
"sidebar-foreground": "#111111",
"sidebar-primary": "#0B0B0B",
"sidebar-primary-foreground": "#ffffff",
"sidebar-accent": "#005F99",
"sidebar-accent-foreground": "#ffffff",
"sidebar-border": "#111111",
"sidebar-ring": "#B7FF2A",
"radius": "2px"
},
"dark": {
"background": "#0f1115",
"foreground": "#f8fafc",
"card": "#181b22",
"card-foreground": "#f8fafc",
"popover": "#181b22",
"popover-foreground": "#f8fafc",
"primary": "#0B0B0B",
"primary-foreground": "#ffffff",
"secondary": "#252a33",
"secondary-foreground": "#f8fafc",
"muted": "#252a33",
"muted-foreground": "#a1a1aa",
"accent": "#B7FF2A",
"accent-foreground": "#111111",
"destructive": "#D41111",
"border": "#303642",
"input": "#303642",
"ring": "#B7FF2A",
"chart-1": "#0B0B0B",
"chart-2": "#F4F1E8",
"chart-3": "#B7FF2A",
"chart-4": "#2F8F1F",
"chart-5": "#B88600",
"sidebar": "#181b22",
"sidebar-foreground": "#f8fafc",
"sidebar-primary": "#0B0B0B",
"sidebar-primary-foreground": "#ffffff",
"sidebar-accent": "#B7FF2A",
"sidebar-accent-foreground": "#111111",
"sidebar-border": "#303642",
"sidebar-ring": "#B7FF2A",
"radius": "2px"
}
},
"meta": {
"source": "katagami",
"languageId": "en-019e8a06-93fd-7e83-94f3-27f1491ac377",
"slug": "decorated-terminal-shed",
"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
Decorated Terminal Shed
Agent-authored scenes, component recipes, and visual profile rendered on local shadcn-style primitives.
Operations terminal for service dispatch
A rectilinear product shell with signage rails, hard black card borders, abstract stamp marks, and one acid-green active route.
Route manifest detail editor
Form controls sit inside a paper notice-board frame with boxed labels, black seams, and acid-green focus state.
Terminal queue with component controls
Tables, dropdown actions, badges, sliders, switches, and separators form a plausible operations screen rather than a component inventory wall.
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: #F7F4EA;
--foreground: #111111;
--card: #FFFDF5;
--card-foreground: #111111;
--popover: #FFFDF5;
--popover-foreground: #111111;
--primary: #0B0B0B;
--primary-foreground: #ffffff;
--secondary: #F4F1E8;
--secondary-foreground: #111111;
--muted: #6B685F;
--muted-foreground: #111111;
--accent: #B7FF2A;
--accent-foreground: #111111;
--destructive: #D41111;
--border: #111111;
--input: #111111;
--ring: #B7FF2A;
--chart-1: #0B0B0B;
--chart-2: #F4F1E8;
--chart-3: #B7FF2A;
--chart-4: #2F8F1F;
--chart-5: #B88600;
--sidebar: #FFFDF5;
--sidebar-foreground: #111111;
--sidebar-primary: #0B0B0B;
--sidebar-primary-foreground: #ffffff;
--sidebar-accent: #005F99;
--sidebar-accent-foreground: #ffffff;
--sidebar-border: #111111;
--sidebar-ring: #B7FF2A;
--radius: 2px;
}
.dark {
--background: #0f1115;
--foreground: #f8fafc;
--card: #181b22;
--card-foreground: #f8fafc;
--popover: #181b22;
--popover-foreground: #f8fafc;
--primary: #0B0B0B;
--primary-foreground: #ffffff;
--secondary: #252a33;
--secondary-foreground: #f8fafc;
--muted: #252a33;
--muted-foreground: #a1a1aa;
--accent: #B7FF2A;
--accent-foreground: #111111;
--destructive: #D41111;
--border: #303642;
--input: #303642;
--ring: #B7FF2A;
--chart-1: #0B0B0B;
--chart-2: #F4F1E8;
--chart-3: #B7FF2A;
--chart-4: #2F8F1F;
--chart-5: #B88600;
--sidebar: #181b22;
--sidebar-foreground: #f8fafc;
--sidebar-primary: #0B0B0B;
--sidebar-primary-foreground: #ffffff;
--sidebar-accent: #B7FF2A;
--sidebar-accent-foreground: #111111;
--sidebar-border: #303642;
--sidebar-ring: #B7FF2A;
--radius: 2px;
}
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 DecoratedTerminalShedShadcnKit() {
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">Decorated Terminal Shed</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": "#FF2FB3",
"accent-foreground": "#ffffff",
"background": "#0f1115",
"border": "#303642",
"card": "#181b22",
"card-foreground": "#f8fafc",
"chart-1": "#111111",
"chart-2": "#F4F1E8",
"chart-3": "#FF2FB3",
"chart-4": "#16824A",
"chart-5": "#F0B400",
"destructive": "#D82020",
"foreground": "#f8fafc",
"input": "#303642",
"muted": "#252a33",
"muted-foreground": "#a1a1aa",
"popover": "#181b22",
"popover-foreground": "#f8fafc",
"primary": "#111111",
"primary-foreground": "#ffffff",
"radius": "2px",
"ring": "#FF2FB3",
"secondary": "#252a33",
"secondary-foreground": "#f8fafc",
"sidebar": "#181b22",
"sidebar-accent": "#FF2FB3",
"sidebar-accent-foreground": "#ffffff",
"sidebar-border": "#303642",
"sidebar-foreground": "#f8fafc",
"sidebar-primary": "#111111",
"sidebar-primary-foreground": "#ffffff",
"sidebar-ring": "#FF2FB3"
},
"light": {
"accent": "#FF2FB3",
"accent-foreground": "#ffffff",
"background": "#F8F6EF",
"border": "#0A0A0A",
"card": "#FFFFFF",
"card-foreground": "#0A0A0A",
"chart-1": "#111111",
"chart-2": "#F4F1E8",
"chart-3": "#FF2FB3",
"chart-4": "#16824A",
"chart-5": "#F0B400",
"destructive": "#D82020",
"foreground": "#0A0A0A",
"input": "#0A0A0A",
"muted": "#6F6A60",
"muted-foreground": "#0A0A0A",
"popover": "#FFFFFF",
"popover-foreground": "#0A0A0A",
"primary": "#111111",
"primary-foreground": "#ffffff",
"radius": "2px",
"ring": "#FF2FB3",
"secondary": "#F4F1E8",
"secondary-foreground": "#111111",
"sidebar": "#FFFFFF",
"sidebar-accent": "#285CFF",
"sidebar-accent-foreground": "#ffffff",
"sidebar-border": "#0A0A0A",
"sidebar-foreground": "#0A0A0A",
"sidebar-primary": "#111111",
"sidebar-primary-foreground": "#ffffff",
"sidebar-ring": "#FF2FB3"
},
"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-019e8a07-1eda-76f2-88c6-015b480e5241",
"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": "decorated-terminal-shed",
"source": "katagami"
},
"name": "decorated-terminal-shed",
"title": "Decorated Terminal Shed shadcn Theme",
"type": "registry:theme"
}
# shadcn/ui Components — Decorated Terminal Shed
Author: `katagami-agent`
## ShadSync visual profile
- Family: decorated-terminal-shed
- Material: warm paper panels, black ink architecture, sparse acid green state indicators.
- Contour: rectilinear components with square registration corners; badges may use small route-chip radius only.
- Border: 2px black structural outlines, doubled seams on important panels, 4px acid-green active rails.
- Grain and underlay: subtle paper grain and terminal-grid underlays behind product content.
## Signature component recipes
### button
Use Button with uppercase mono route prefix, black border, paper fill, hard 3px black shadow; primary adds acid-green left rail and active route code.
### card
Use Card as a plain shed wall: paper background, 2px black outline, square corner ticks, route label in CardHeader, black offset shadow, optional abstract stamp in a corner.
### input
Use Input with white/paper fill, 2px black border, mono inset label, acid-green focus ring, and no browser-default blue glow.
### textarea
Use Textarea as a dispatch log panel with mono row code, paper fill, black border, and acid-green focus edge.
### select
Use SelectTrigger with compact route code, chevron inside a boxed black cell, selected state marked with acid-green underline.
### dialog
Use DialogContent as a terminal notice board: thick black frame, route-badge header, hard shadow, abstract safety-mark background.
### sheet
Use Sheet as a sliding service bay with vertical route tabs, black seam border, paper grain, and fixed-width operational actions.
### tabs
Use TabsList as track signage; TabsTrigger uses mono route IDs, black separators, and acid-green active top bar.
### badge
Use Badge for route chips, stamp labels, and state tags; keep black outline and paper fill, acid green only for live states.
### separator
Use Separator as architectural seam; 2px black or dotted registration line with optional small square endpoints.
### checkbox
Use Checkbox with black square frame and acid-green checked fill plus black mark, no rounded default softness.
### switch
Use Switch as a rail signal: rectangular track, black border, acid-green active track, square-ish thumb.
### slider
Use Slider as route capacity rail with black track, acid-green filled range, square handles with registration ticks.
### tooltip
Use TooltipContent as a small route placard, paper fill, black outline, mono label, no translucent glass.
### dropdown-menu
Use DropdownMenuContent as stacked terminal signage, black dividers, hover row with acid-green edge marker.
### table
Use Table with strong black row rules, mono station IDs, acid-green selected row rail, and abstract stamp in empty states.
## Preview shots
- `application-shell`: dashboard route board with sidebar signs and live operations cards.
- `detail-editor`: record editor with dispatch fields, warning badges, and abstract terminal stamp.
- `data-operations`: table-heavy queue with filters, dropdown actions, capacity slider, and state chips.
## Copy-paste component example
```tsx
import { Button } from "@/components/ui/button"
import { Card, CardContent, CardHeader, CardTitle } from "@/components/ui/card"
import { Badge } from "@/components/ui/badge"
import { Input } from "@/components/ui/input"
export function TerminalShedPanel() {
return (
<Card className="rounded-[2px] border-2 border-black bg-[var(--card)] shadow-[6px_6px_0_#111]">
<CardHeader className="border-b-2 border-black">
<Badge className="w-fit rounded-[2px] border border-black bg-[var(--accent)] font-mono text-black">R-07 LIVE</Badge>
<CardTitle className="font-black uppercase tracking-tight">Dispatch Route Board</CardTitle>
</CardHeader>
<CardContent className="grid gap-4 p-4">
<Input className="rounded-[2px] border-2 border-black font-mono focus-visible:ring-[var(--accent)]" defaultValue="GATE / LOAD / VERIFY" />
<Button className="rounded-[2px] border-2 border-black bg-black font-mono text-[var(--accent)] shadow-[3px_3px_0_#B7FF2A]">COMMIT ROUTE</Button>
</CardContent>
</Card>
)
}
```
{
"artifact": "katagami:shadcn-preview-shots",
"author": "katagami-agent",
"componentRecipes": [
{
"component": "button",
"recipe": "Use Button with uppercase mono route prefix, black border, paper fill, hard 3px black shadow; primary adds acid-green left rail and active route code.",
"shapeScale": "rectilinear controls, 0-4px radius; route badges may be compact chips",
"usesShadcnPrimitive": true
},
{
"component": "card",
"recipe": "Use Card as a plain shed wall: paper background, 2px black outline, square corner ticks, route label in CardHeader, black offset shadow, optional abstract stamp in a corner.",
"shapeScale": "rectilinear controls, 0-4px radius; route badges may be compact chips",
"usesShadcnPrimitive": true
},
{
"component": "input",
"recipe": "Use Input with white/paper fill, 2px black border, mono inset label, acid-green focus ring, and no browser-default blue glow.",
"shapeScale": "rectilinear controls, 0-4px radius; route badges may be compact chips",
"usesShadcnPrimitive": true
},
{
"component": "textarea",
"recipe": "Use Textarea as a dispatch log panel with mono row code, paper fill, black border, and acid-green focus edge.",
"shapeScale": "rectilinear controls, 0-4px radius; route badges may be compact chips",
"usesShadcnPrimitive": true
},
{
"component": "select",
"recipe": "Use SelectTrigger with compact route code, chevron inside a boxed black cell, selected state marked with acid-green underline.",
"shapeScale": "rectilinear controls, 0-4px radius; route badges may be compact chips",
"usesShadcnPrimitive": true
},
{
"component": "dialog",
"recipe": "Use DialogContent as a terminal notice board: thick black frame, route-badge header, hard shadow, abstract safety-mark background.",
"shapeScale": "rectilinear controls, 0-4px radius; route badges may be compact chips",
"usesShadcnPrimitive": true
},
{
"component": "sheet",
"recipe": "Use Sheet as a sliding service bay with vertical route tabs, black seam border, paper grain, and fixed-width operational actions.",
"shapeScale": "rectilinear controls, 0-4px radius; route badges may be compact chips",
"usesShadcnPrimitive": true
},
{
"component": "tabs",
"recipe": "Use TabsList as track signage; TabsTrigger uses mono route IDs, black separators, and acid-green active top bar.",
"shapeScale": "rectilinear controls, 0-4px radius; route badges may be compact chips",
"usesShadcnPrimitive": true
},
{
"component": "badge",
"recipe": "Use Badge for route chips, stamp labels, and state tags; keep black outline and paper fill, acid green only for live states.",
"shapeScale": "rectilinear controls, 0-4px radius; route badges may be compact chips",
"usesShadcnPrimitive": true
},
{
"component": "separator",
"recipe": "Use Separator as architectural seam; 2px black or dotted registration line with optional small square endpoints.",
"shapeScale": "rectilinear controls, 0-4px radius; route badges may be compact chips",
"usesShadcnPrimitive": true
},
{
"component": "checkbox",
"recipe": "Use Checkbox with black square frame and acid-green checked fill plus black mark, no rounded default softness.",
"shapeScale": "rectilinear controls, 0-4px radius; route badges may be compact chips",
"usesShadcnPrimitive": true
},
{
"component": "switch",
"recipe": "Use Switch as a rail signal: rectangular track, black border, acid-green active track, square-ish thumb.",
"shapeScale": "rectilinear controls, 0-4px radius; route badges may be compact chips",
"usesShadcnPrimitive": true
},
{
"component": "slider",
"recipe": "Use Slider as route capacity rail with black track, acid-green filled range, square handles with registration ticks.",
"shapeScale": "rectilinear controls, 0-4px radius; route badges may be compact chips",
"usesShadcnPrimitive": true
},
{
"component": "tooltip",
"recipe": "Use TooltipContent as a small route placard, paper fill, black outline, mono label, no translucent glass.",
"shapeScale": "rectilinear controls, 0-4px radius; route badges may be compact chips",
"usesShadcnPrimitive": true
},
{
"component": "dropdown-menu",
"recipe": "Use DropdownMenuContent as stacked terminal signage, black dividers, hover row with acid-green edge marker.",
"shapeScale": "rectilinear controls, 0-4px radius; route badges may be compact chips",
"usesShadcnPrimitive": true
},
{
"component": "table",
"recipe": "Use Table with strong black row rules, mono station IDs, acid-green selected row rail, and abstract stamp in empty states.",
"shapeScale": "rectilinear controls, 0-4px radius; route badges may be compact chips",
"usesShadcnPrimitive": true
}
],
"generatedBy": "katagami-agent",
"renderable": true,
"requiresVisualProfile": true,
"schema": "katagami:shadcn-preview-shots/renderable-v1",
"shots": [
{
"id": "application-shell",
"scene": {
"actions": [
"Commit route",
"Open bay sheet"
],
"description": "A rectilinear product shell with signage rails, hard black card borders, abstract stamp marks, and one acid-green active route.",
"eyebrow": "ROUTE R-07 / LIVE",
"fields": [
{
"label": "Search route",
"value": "terminal-shed"
},
{
"label": "Mode",
"value": "dispatch"
}
],
"headline": "Operations terminal for service dispatch",
"stats": [
{
"label": "Active gates",
"value": "18"
},
{
"label": "Delayed loads",
"value": "03"
},
{
"label": "Signal health",
"value": "97%"
}
]
},
"title": "Application Shell"
},
{
"id": "detail-editor",
"scene": {
"actions": [
"Save manifest",
"Escalate warning"
],
"description": "Form controls sit inside a paper notice-board frame with boxed labels, black seams, and acid-green focus state.",
"eyebrow": "EDIT BAY / MANIFEST",
"fields": [
{
"label": "Route code",
"value": "R-07"
},
{
"label": "Dock note",
"value": "Verify cold-chain seal"
},
{
"label": "Operator",
"value": "Kata-13"
}
],
"headline": "Route manifest detail editor",
"stats": [
{
"label": "Warnings",
"value": "2"
},
{
"label": "Fields locked",
"value": "5"
}
]
},
"title": "Detail Editor"
},
{
"id": "data-operations",
"scene": {
"actions": [
"Filter queue",
"Export route sheet"
],
"description": "Tables, dropdown actions, badges, sliders, switches, and separators form a plausible operations screen rather than a component inventory wall.",
"eyebrow": "QUEUE / TABLE",
"headline": "Terminal queue with component controls",
"rows": [
{
"id": "ST-104",
"load": "82%",
"route": "North Shed",
"state": "live"
},
{
"id": "ST-118",
"load": "41%",
"route": "Cold Gate",
"state": "hold"
},
{
"id": "ST-221",
"load": "63%",
"route": "Express Rail",
"state": "ready"
}
],
"stats": [
{
"label": "Rows selected",
"value": "12"
},
{
"label": "Capacity",
"value": "68%"
}
]
},
"title": "Data Operations"
}
],
"version": "preview-shots-v1",
"visualProfile": {
"accents": [
"acid-green active routes",
"black terminal labels",
"abstract system glyph stamps"
],
"border": "2px black outlines, occasional doubled route seams, 4px acid-green active edge",
"contour": "rectilinear shed panels with square registration corners",
"density": "moderately dense operational signage",
"family": "decorated-terminal-shed",
"grain": true,
"material": "warm paper interface with black ink architecture",
"motion": "short mechanical snap, no soft drift",
"stickerBadges": true,
"underlay": true
}
}