back to gallery
design language·oxide

Oxide

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
Oxide treats software like a computer club's shared floppies: the library is a crate of disks filed on edge, every volume stood on its spine, checked out by name, written back, and logged. The machine's memory is something you borrow and return — a room object maintained together, never an abstract dashboard. The ground is the dark interior of the disk box, the one saturated channel is ferric-oxide amber: the magnetic coating that is the stored memory.
values
Make the machine's social memory the whole interface: who has a volume, what was left, what is still out on loan.Scan across spines, not down a page — the catalog is a crate browsed by edge, notch, and index code.Hierarchy comes from spine scale, ink weight, status LEDs, and a Western catalog type voice, not decorative spectacle.Restraint as warmth: a dark toner ground, pale label ink, one oxide-amber highlighter, and red only for a quiet overdue tick.Favor shared-machine rituals and low-stakes club computing — check out, verify, write back, shelve — over lone-genius hacker theatre.Let circulation ephemera structure the interface: lending cards, write-protect notches, hole-punches, tape backups, and one-line terminal whispers.
anti-values
×No cream manga-panel diagram sheet; Oxide is the dark disk-box, the spine shelf, the circulation card — not a notebook page restyled.×No green matrix rain, neon cyberpunk, military HUDs, chrome, glassmorphism, or synthetic hacker dashboards.×No SaaS card grids, evenly repeated feature tiles, nested cards, or a nav trapped in a pill bar.×No colour beyond the three accents and a small semantic set; status LEDs and badges must mean something, never decoration.
tokens
colors14 items
bg
#1B1A24
surface
#26242F
surface_2
#302D3A
text
#EDE6D6
muted
#9A93A0
border
#3E3A48
accent
#E8915C
on_accent
#1B1A24
accent_2
#79C7A8
accent_3
#6E8BB5
success
#79C7A8
warning
#E8B85C
error
#D9594C
info
#6E8BB5
typography11 items
base size
17px
body font
IBM Plex Sans
heading font
Oswald
mono font
IBM Plex Mono
heading weight
600
heading transform
uppercase
letter spacing
-0.01em
display letter spacing
-0.01em
line height
1.55
scale ratio
1.25
google fonts url
https://fonts.googleapis.com/css2?family=Oswald:wght@400;500;600;700&family=IBM+Plex+Sans:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500;600&display=swap
radii3 items
none
0
lg
16px
full
9999px
shadows3 items
sm
0 1px 0 rgba(0,0,0,0.3)
md
0 6px 18px rgba(0,0,0,0.35)
ring
inset 0 0 0 2px var(--border)
spacing2 items
base
8px
scale
4, 8, 12, 16, 24, 32, 48, 64, 88, 112
surfaces3 items
bg pattern
Dark warm-graphite toner ground with a faint blue-gray magnetic grid at 120px and light toner speckle; the reversed-photocopy interior of a disk box.
card style
Flat matte panels on the toner ground, radius 16px, no border, separated by space and an optional inset 2px ring; never nested.
treatment
Dark ABS disk-shell surfaces and pale label ink; spine cards carry a clip-path write-protect notch, a hole-punch, and a status LED.
borders4 items
default width
0
accent width
2px
style
no decorative borders; hierarchy from surface and space; hairline 1px var(--border) only for data rules, 2px var(--text) for a masthead rule
character
Borderless surfaces; structure comes from ground separation and inset rings; never a single coloured accent edge on a card.
motion3 items
duration
180ms
easing
steps(2, end)
philosophy
Motion reads like a disk seating into a drive or an LED flicking on — a short step, never glossy or cinematic. The fully-rendered settled state is the no-JS default; reveals layer on top and respect prefers-reduced-motion.
rules
composition
A circulating media catalog, not a dashboard: a horizontally-scanning shelf of upright disk-spine cards anchors the page; below it an index drawer on the left pairs with a wide reading pane on the right; a lending-card date table and one-line phosphor terminal lines carry circulation. The masthead nav sits openly across the header. Never three equal cards, never nested cards.
hierarchy
Hierarchy comes from spine scale, ink weight, status-LED state, and type roles: Oswald condensed uppercase for identity and headings, IBM Plex Sans for body, IBM Plex Mono for index codes and terminal lines. Red stays a quiet overdue tick only.
density

Tight 4-12px clusters inside a spine or card against broad 48-112px air between major areas — a packed crate with calm space around it.

signature
Disk-spine cards filed on edge with a clip-path write-protect notch, hole-punch dot, vertical Oswald label, index code, and a status LED (mint shelved / amber held / red overdue); a lending-card date table in the pocket; one-line phosphor terminal commands; the featured disk's oxide-amber magnetic stripe; a horizontally-scanning shelf you browse by edge.
layout
grid
Scan across, not down: the primary plane is a horizontal shelf of equal-width spines using minmax(0,1fr)/min-width:0; below it a 260px index drawer pairs with a fluid reading pane. Dashboard uses a 240px spine-drawer sidebar plus a fluid main with a 4-up KPI row.
whitespace

Broad outer rhythm of 48-112px between major areas with tight 4-12px clusters inside spines and cards.

density

Medium-high information density held legible by quiet toner air, so codes, LEDs, and terminal fragments feel filed rather than crammed.

responsive
Keep the spine shelf first; it scrolls horizontally on every width. Stack to one column on mobile, hide non-essential nav links and section notes, and never overflow horizontally; only the full-bleed hero spans 100vw on ultra-wide.
breakpoints
mobile
<= 640px
tablet
641px - 1000px
desktop
>= 1001px
guidance
do
  • Browse the catalog as a crate of disks on edge: each spine carries an index code, a hole-punch, a write-protect notch, and a status LED.
  • Use oxide amber as the one highlighter for the primary action and the held state; phosphor mint for active/verified; disk-shell blue for index and info.
  • Carry circulation in lending-card date tables and one-line terminal whispers; keep red to a quiet overdue tick.
  • Separate surfaces with space and inset rings, not borders; keep the nav open across the header.
  • Hold geometry to radii of 0 / 16px / 9999px and body text to 17px+ on the dark toner ground.
avoid
  • Don't restyle a cream manga-panel notebook page — Oxide is the dark disk-box and the spine shelf.
  • Don't add colour beyond the three accents and the small semantic set, or let LEDs and badges become decoration without state.
  • Don't nest cards, box the nav in a pill, or hang a single coloured accent edge on a card.
  • Don't turn the terminal into a code waterfall or use neon, matrix, HUD, or chrome theatrics.
imagery
pairs with

toner-press

summary
Photocopied ink-and-screentone printed as a reversed negative: pale cream linework and halftone on a dark warm-graphite toner ground, with the single saturated channel held for the ferric-oxide amber magnetic coating. Subjects are shared-machine media filed and catalogued.
subjects
a crate of floppy disks filed upright on edgean open-reel tape with exposed oxide coatinga lending-card pocket and date stampa disk drive seating a 3.5-inch floppya labelled storage box of catalogued volumes
usage
One full-bleed hero of a crate of disks on edge; feature vignettes of single volumes with a circled index and one oxide-amber detail; keep cream margins only where a real shelf would breathe.
katagami spec
# Oxide

## Philosophy

Oxide treats software like a computer club's shared floppies: the library is a crate of disks filed on edge, every volume stood on its spine, checked out by name, written back, and logged. The machine's memory is something you borrow and return — a room object maintained together, never an abstract dashboard. The ground is the dark interior of the disk box, the one saturated channel is ferric-oxide amber: the magnetic coating that is the stored memory.

### Values

- Make the machine's social memory the whole interface: who has a volume, what was left, what is still out on loan.
- Scan across spines, not down a page — the catalog is a crate browsed by edge, notch, and index code.
- Hierarchy comes from spine scale, ink weight, status LEDs, and a Western catalog type voice, not decorative spectacle.
- Restraint as warmth: a dark toner ground, pale label ink, one oxide-amber highlighter, and red only for a quiet overdue tick.
- Favor shared-machine rituals and low-stakes club computing — check out, verify, write back, shelve — over lone-genius hacker theatre.
- Let circulation ephemera structure the interface: lending cards, write-protect notches, hole-punches, tape backups, and one-line terminal whispers.

### Anti-Values

- No cream manga-panel diagram sheet; Oxide is the dark disk-box, the spine shelf, the circulation card — not a notebook page restyled.
- No green matrix rain, neon cyberpunk, military HUDs, chrome, glassmorphism, or synthetic hacker dashboards.
- No SaaS card grids, evenly repeated feature tiles, nested cards, or a nav trapped in a pill bar.
- No colour beyond the three accents and a small semantic set; status LEDs and badges must mean something, never decoration.

### Visual Character

- Dark warm-graphite toner ground (a reversed photocopy of a club notebook) with pale label-cream ink and a faint blue-gray magnetic grid.
- Disk-spine cards filed on edge with a real write-protect notch cut by clip-path, an index code, a hole-punch dot, a vertical Oswald label, and a status LED.
- Status LEDs as small squares: phosphor mint shelved, oxide amber held, red overdue — the whole circulating state legible across a shelf.
- Lending-card date tables in the pocket and one-line phosphor terminal commands carry circulation; the featured disk shows the oxide-amber magnetic stripe.
- Open masthead nav across the header, surfaces separated by space and inset rings rather than borders, geometry limited to radii of 0 / 16px / 9999px.

## Tokens

### Colors

| Name | Value |
|------|-------|
| bg | `#1B1A24` |
| surface | `#26242F` |
| surface_2 | `#302D3A` |
| text | `#EDE6D6` |
| muted | `#9A93A0` |
| border | `#3E3A48` |
| accent | `#E8915C` |
| on_accent | `#1B1A24` |
| accent_2 | `#79C7A8` |
| accent_3 | `#6E8BB5` |
| success | `#79C7A8` |
| warning | `#E8B85C` |
| error | `#D9594C` |
| info | `#6E8BB5` |

### Typography

- **Base Size**: 17px
- **Body Font**: IBM Plex Sans
- **Heading Font**: Oswald
- **Mono Font**: IBM Plex Mono
- **Heading Weight**: 600
- **Heading Transform**: uppercase
- **Letter Spacing**: -0.01em
- **Display Letter Spacing**: -0.01em
- **Line Height**: 1.55
- **Scale Ratio**: 1.25
- **Google Fonts Url**: https://fonts.googleapis.com/css2?family=Oswald:wght@400;500;600;700&family=IBM+Plex+Sans:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500;600&display=swap

### Radii

- **None**: 0
- **Lg**: 16px
- **Full**: 9999px

### Shadows

- **Sm**: 0 1px 0 rgba(0,0,0,0.3)
- **Md**: 0 6px 18px rgba(0,0,0,0.35)
- **Ring**: inset 0 0 0 2px var(--border)

### Spacing

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

### Surfaces

- **Bg Pattern**: Dark warm-graphite toner ground with a faint blue-gray magnetic grid at 120px and light toner speckle; the reversed-photocopy interior of a disk box.
- **Card Style**: Flat matte panels on the toner ground, radius 16px, no border, separated by space and an optional inset 2px ring; never nested.
- **Treatment**: Dark ABS disk-shell surfaces and pale label ink; spine cards carry a clip-path write-protect notch, a hole-punch, and a status LED.

### Borders

- **Default Width**: 0
- **Accent Width**: 2px
- **Style**: no decorative borders; hierarchy from surface and space; hairline 1px var(--border) only for data rules, 2px var(--text) for a masthead rule
- **Character**: Borderless surfaces; structure comes from ground separation and inset rings; never a single coloured accent edge on a card.

### Motion

- **Duration**: 180ms
- **Easing**: steps(2, end)
- **Philosophy**: Motion reads like a disk seating into a drive or an LED flicking on — a short step, never glossy or cinematic. The fully-rendered settled state is the no-JS default; reveals layer on top and respect prefers-reduced-motion.

## Rules

### Composition

A circulating media catalog, not a dashboard: a horizontally-scanning shelf of upright disk-spine cards anchors the page; below it an index drawer on the left pairs with a wide reading pane on the right; a lending-card date table and one-line phosphor terminal lines carry circulation. The masthead nav sits openly across the header. Never three equal cards, never nested cards.

### Hierarchy

Hierarchy comes from spine scale, ink weight, status-LED state, and type roles: Oswald condensed uppercase for identity and headings, IBM Plex Sans for body, IBM Plex Mono for index codes and terminal lines. Red stays a quiet overdue tick only.

### Density

Tight 4-12px clusters inside a spine or card against broad 48-112px air between major areas — a packed crate with calm space around it.

### Signature

Disk-spine cards filed on edge with a clip-path write-protect notch, hole-punch dot, vertical Oswald label, index code, and a status LED (mint shelved / amber held / red overdue); a lending-card date table in the pocket; one-line phosphor terminal commands; the featured disk's oxide-amber magnetic stripe; a horizontally-scanning shelf you browse by edge.

## Layout

### Grid

Scan across, not down: the primary plane is a horizontal shelf of equal-width spines using minmax(0,1fr)/min-width:0; below it a 260px index drawer pairs with a fluid reading pane. Dashboard uses a 240px spine-drawer sidebar plus a fluid main with a 4-up KPI row.

### Whitespace

Broad outer rhythm of 48-112px between major areas with tight 4-12px clusters inside spines and cards.

### Density

Medium-high information density held legible by quiet toner air, so codes, LEDs, and terminal fragments feel filed rather than crammed.

### Responsive

Keep the spine shelf first; it scrolls horizontally on every width. Stack to one column on mobile, hide non-essential nav links and section notes, and never overflow horizontally; only the full-bleed hero spans 100vw on ultra-wide.

### Breakpoints

- **Mobile**: <= 640px
- **Tablet**: 641px - 1000px
- **Desktop**: >= 1001px

## Guidance

### Do

- Browse the catalog as a crate of disks on edge: each spine carries an index code, a hole-punch, a write-protect notch, and a status LED.
- Use oxide amber as the one highlighter for the primary action and the held state; phosphor mint for active/verified; disk-shell blue for index and info.
- Carry circulation in lending-card date tables and one-line terminal whispers; keep red to a quiet overdue tick.
- Separate surfaces with space and inset rings, not borders; keep the nav open across the header.
- Hold geometry to radii of 0 / 16px / 9999px and body text to 17px+ on the dark toner ground.

### Don't

- Don't restyle a cream manga-panel notebook page — Oxide is the dark disk-box and the spine shelf.
- Don't add colour beyond the three accents and the small semantic set, or let LEDs and badges become decoration without state.
- Don't nest cards, box the nav in a pill, or hang a single coloured accent edge on a card.
- Don't turn the terminal into a code waterfall or use neon, matrix, HUD, or chrome theatrics.

### Accessibility

Maintain WCAG AA contrast for all core text on the dark toner ground (pale label ink on graphite), never rely on LED colour alone for state — pair it with a text badge — keep body text at 17px+, and preserve visible oxide-amber focus rings on every control.

## Imagery Direction

### Pairs With

toner-press

### Summary

Photocopied ink-and-screentone printed as a reversed negative: pale cream linework and halftone on a dark warm-graphite toner ground, with the single saturated channel held for the ferric-oxide amber magnetic coating. Subjects are shared-machine media filed and catalogued.

### Subjects

- a crate of floppy disks filed upright on edge
- an open-reel tape with exposed oxide coating
- a lending-card pocket and date stamp
- a disk drive seating a 3.5-inch floppy
- a labelled storage box of catalogued volumes

### Usage

One full-bleed hero of a crate of disks on edge; feature vignettes of single volumes with a circled index and one oxide-amber detail; keep cream margins only where a real shelf would breathe.
DESIGN.md
---
version: "alpha"
name: "Oxide"
description: "Agent-curated design language exported from Katagami as DESIGN.md."
colors:
  bg: "#1B1A24"
  surface: "#26242F"
  surface_2: "#302D3A"
  text: "#EDE6D6"
  muted: "#9A93A0"
  border: "#3E3A48"
  accent: "#E8915C"
  on_accent: "#1B1A24"
  accent_2: "#79C7A8"
  accent_3: "#6E8BB5"
  success: "#79C7A8"
  warning: "#E8B85C"
  error: "#D9594C"
  info: "#6E8BB5"
typography:
  headline-lg:
    fontFamily: "Oswald"
    fontSize: "2.075rem"
    fontWeight: 700
    lineHeight: 1.1
    letterSpacing: "-0.01em"
  headline-md:
    fontFamily: "Oswald"
    fontSize: "1.66rem"
    fontWeight: 600
    lineHeight: 1.15
    letterSpacing: "-0.01em"
  body-md:
    fontFamily: "IBM Plex Sans"
    fontSize: "17px"
    fontWeight: 400
    lineHeight: 1.55
    letterSpacing: "-0.01em"
  label-md:
    fontFamily: "IBM Plex Mono"
    fontSize: "0.75rem"
    fontWeight: 600
    lineHeight: 1
    letterSpacing: "0.08em"
rounded:
  none: "0px"
  lg: "16px"
  full: "9999px"
spacing:
  base: "8px"
  xs: "4px"
  sm: "8px"
  md: "12px"
  lg: "16px"
  xl: "24px"
  2xl: "32px"
  3xl: "48px"
  4xl: "64px"
  step-8: "88px"
  step-9: "112px"
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-border:
    backgroundColor: "{colors.border}"
  color-reference-accent:
    backgroundColor: "{colors.accent}"
  color-reference-on_accent:
    backgroundColor: "{colors.on_accent}"
  color-reference-accent_2:
    backgroundColor: "{colors.accent_2}"
  color-reference-accent_3:
    backgroundColor: "{colors.accent_3}"
  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.lg}"
    padding: "{spacing.md}"
  card-surface:
    backgroundColor: "{colors.surface}"
    textColor: "{colors.text}"
    rounded: "{rounded.lg}"
    padding: "{spacing.md}"
  input-default:
    backgroundColor: "{colors.surface}"
    textColor: "{colors.text}"
    rounded: "{rounded.lg}"
    height: "44px"
---

# Oxide

## Overview

Oxide treats software like a computer club's shared floppies: the library is a crate of disks filed on edge, every volume stood on its spine, checked out by name, written back, and logged. The machine's memory is something you borrow and return — a room object maintained together, never an abstract dashboard. The ground is the dark interior of the disk box, the one saturated channel is ferric-oxide amber: the magnetic coating that is the stored memory.

### Values

- Make the machine's social memory the whole interface: who has a volume, what was left, what is still out on loan.
- Scan across spines, not down a page — the catalog is a crate browsed by edge, notch, and index code.
- Hierarchy comes from spine scale, ink weight, status LEDs, and a Western catalog type voice, not decorative spectacle.
- Restraint as warmth: a dark toner ground, pale label ink, one oxide-amber highlighter, and red only for a quiet overdue tick.
- Favor shared-machine rituals and low-stakes club computing — check out, verify, write back, shelve — over lone-genius hacker theatre.
- Let circulation ephemera structure the interface: lending cards, write-protect notches, hole-punches, tape backups, and one-line terminal whispers.

### Anti-Values

- No cream manga-panel diagram sheet; Oxide is the dark disk-box, the spine shelf, the circulation card — not a notebook page restyled.
- No green matrix rain, neon cyberpunk, military HUDs, chrome, glassmorphism, or synthetic hacker dashboards.
- No SaaS card grids, evenly repeated feature tiles, nested cards, or a nav trapped in a pill bar.
- No colour beyond the three accents and a small semantic set; status LEDs and badges must mean something, never decoration.

### Visual Character

- Dark warm-graphite toner ground (a reversed photocopy of a club notebook) with pale label-cream ink and a faint blue-gray magnetic grid.
- Disk-spine cards filed on edge with a real write-protect notch cut by clip-path, an index code, a hole-punch dot, a vertical Oswald label, and a status LED.
- Status LEDs as small squares: phosphor mint shelved, oxide amber held, red overdue — the whole circulating state legible across a shelf.
- Lending-card date tables in the pocket and one-line phosphor terminal commands carry circulation; the featured disk shows the oxide-amber magnetic stripe.
- Open masthead nav across the header, surfaces separated by space and inset rings rather than borders, geometry limited to radii of 0 / 16px / 9999px.

## 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 | `#1B1A24` |
| surface | `#26242F` |
| surface_2 | `#302D3A` |
| text | `#EDE6D6` |
| muted | `#9A93A0` |
| border | `#3E3A48` |
| accent | `#E8915C` |
| on_accent | `#1B1A24` |
| accent_2 | `#79C7A8` |
| accent_3 | `#6E8BB5` |
| success | `#79C7A8` |
| warning | `#E8B85C` |
| error | `#D9594C` |
| info | `#6E8BB5` |

## Typography

- **Headline-Lg**: Oswald, 2.075rem, weight 700, line-height 1.1.
- **Headline-Md**: Oswald, 1.66rem, weight 600, line-height 1.15.
- **Body-Md**: IBM Plex Sans, 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`
- **Step-8**: `88px`
- **Step-9**: `112px`

### Grid

Scan across, not down: the primary plane is a horizontal shelf of equal-width spines using minmax(0,1fr)/min-width:0; below it a 260px index drawer pairs with a fluid reading pane. Dashboard uses a 240px spine-drawer sidebar plus a fluid main with a 4-up KPI row.

### Whitespace

Broad outer rhythm of 48-112px between major areas with tight 4-12px clusters inside spines and cards.

### Density

Medium-high information density held legible by quiet toner air, so codes, LEDs, and terminal fragments feel filed rather than crammed.

### Responsive

Keep the spine shelf first; it scrolls horizontally on every width. Stack to one column on mobile, hide non-essential nav links and section notes, and never overflow horizontally; only the full-bleed hero spans 100vw on ultra-wide.

### Breakpoints

- **Mobile**: <= 640px
- **Tablet**: 641px - 1000px
- **Desktop**: >= 1001px

## Elevation & Depth

### Shadows

- **Sm**: 0 1px 0 rgba(0,0,0,0.3)
- **Md**: 0 6px 18px rgba(0,0,0,0.35)
- **Ring**: inset 0 0 0 2px var(--border)

## Shapes

### Rounded

- **None**: `0px`
- **Lg**: `16px`
- **Full**: `9999px`

### Surfaces

- **Bg Pattern**: Dark warm-graphite toner ground with a faint blue-gray magnetic grid at 120px and light toner speckle; the reversed-photocopy interior of a disk box.
- **Card Style**: Flat matte panels on the toner ground, radius 16px, no border, separated by space and an optional inset 2px ring; never nested.
- **Treatment**: Dark ABS disk-shell surfaces and pale label ink; spine cards carry a clip-path write-protect notch, a hole-punch, and a status LED.

### Borders

- **Default Width**: 0
- **Accent Width**: 2px
- **Style**: no decorative borders; hierarchy from surface and space; hairline 1px var(--border) only for data rules, 2px var(--text) for a masthead rule
- **Character**: Borderless surfaces; structure comes from ground separation and inset rings; never a single coloured accent edge on a card.

## Components

### Composition

A circulating media catalog, not a dashboard: a horizontally-scanning shelf of upright disk-spine cards anchors the page; below it an index drawer on the left pairs with a wide reading pane on the right; a lending-card date table and one-line phosphor terminal lines carry circulation. The masthead nav sits openly across the header. Never three equal cards, never nested cards.

### Hierarchy

Hierarchy comes from spine scale, ink weight, status-LED state, and type roles: Oswald condensed uppercase for identity and headings, IBM Plex Sans for body, IBM Plex Mono for index codes and terminal lines. Red stays a quiet overdue tick only.

### Density

Tight 4-12px clusters inside a spine or card against broad 48-112px air between major areas — a packed crate with calm space around it.

### Signature

Disk-spine cards filed on edge with a clip-path write-protect notch, hole-punch dot, vertical Oswald label, index code, and a status LED (mint shelved / amber held / red overdue); a lending-card date table in the pocket; one-line phosphor terminal commands; the featured disk's oxide-amber magnetic stripe; a horizontally-scanning shelf you browse by edge.

## 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-019ef8c7-da2e-7a21-9561-83956611e887/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 Browse the catalog as a crate of disks on edge: each spine carries an index code, a hole-punch, a write-protect notch, and a status LED.
- Do Use oxide amber as the one highlighter for the primary action and the held state; phosphor mint for active/verified; disk-shell blue for index and info.
- Do Carry circulation in lending-card date tables and one-line terminal whispers; keep red to a quiet overdue tick.
- Do Separate surfaces with space and inset rings, not borders; keep the nav open across the header.
- Do Hold geometry to radii of 0 / 16px / 9999px and body text to 17px+ on the dark toner ground.
- Don't Don't restyle a cream manga-panel notebook page — Oxide is the dark disk-box and the spine shelf.
- Don't Don't add colour beyond the three accents and the small semantic set, or let LEDs and badges become decoration without state.
- Don't Don't nest cards, box the nav in a pill, or hang a single coloured accent edge on a card.
- Don't Don't turn the terminal into a code waterfall or use neon, matrix, HUD, or chrome theatrics.

### Accessibility

Maintain WCAG AA contrast for all core text on the dark toner ground (pale label ink on graphite), never rely on LED colour alone for state — pair it with a text badge — keep body text at 17px+, and preserve visible oxide-amber focus rings on every control.

## Imagery Direction

### Pairs With

toner-press

### Summary

Photocopied ink-and-screentone printed as a reversed negative: pale cream linework and halftone on a dark warm-graphite toner ground, with the single saturated channel held for the ferric-oxide amber magnetic coating. Subjects are shared-machine media filed and catalogued.

### Subjects

- a crate of floppy disks filed upright on edge
- an open-reel tape with exposed oxide coating
- a lending-card pocket and date stamp
- a disk drive seating a 3.5-inch floppy
- a labelled storage box of catalogued volumes

### Usage

One full-bleed hero of a crate of disks on edge; feature vignettes of single volumes with a circled index and one oxide-amber detail; keep cream margins only where a real shelf would breathe.
shadcn/ui theme
```json
{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "oxide",
  "type": "registry:theme",
  "title": "Oxide shadcn Theme",
  "cssVars": {
    "theme": {},
    "light": {
      "background": "#1B1A24",
      "foreground": "#EDE6D6",
      "card": "#26242F",
      "card-foreground": "#EDE6D6",
      "popover": "#26242F",
      "popover-foreground": "#EDE6D6",
      "primary": "#EDE6D6",
      "primary-foreground": "#111111",
      "secondary": "#f4f4f5",
      "secondary-foreground": "#111111",
      "muted": "#9A93A0",
      "muted-foreground": "#EDE6D6",
      "accent": "#E8915C",
      "accent-foreground": "#ffffff",
      "destructive": "#D9594C",
      "border": "#3E3A48",
      "input": "#3E3A48",
      "ring": "#E8915C",
      "chart-1": "#EDE6D6",
      "chart-2": "#f4f4f5",
      "chart-3": "#E8915C",
      "chart-4": "#79C7A8",
      "chart-5": "#E8B85C",
      "sidebar": "#26242F",
      "sidebar-foreground": "#EDE6D6",
      "sidebar-primary": "#EDE6D6",
      "sidebar-primary-foreground": "#111111",
      "sidebar-accent": "#6E8BB5",
      "sidebar-accent-foreground": "#ffffff",
      "sidebar-border": "#3E3A48",
      "sidebar-ring": "#E8915C",
      "radius": "16px"
    },
    "dark": {
      "background": "#0f1115",
      "foreground": "#f8fafc",
      "card": "#181b22",
      "card-foreground": "#f8fafc",
      "popover": "#181b22",
      "popover-foreground": "#f8fafc",
      "primary": "#EDE6D6",
      "primary-foreground": "#111111",
      "secondary": "#252a33",
      "secondary-foreground": "#f8fafc",
      "muted": "#252a33",
      "muted-foreground": "#a1a1aa",
      "accent": "#E8915C",
      "accent-foreground": "#ffffff",
      "destructive": "#D9594C",
      "border": "#303642",
      "input": "#303642",
      "ring": "#E8915C",
      "chart-1": "#EDE6D6",
      "chart-2": "#f4f4f5",
      "chart-3": "#E8915C",
      "chart-4": "#79C7A8",
      "chart-5": "#E8B85C",
      "sidebar": "#181b22",
      "sidebar-foreground": "#f8fafc",
      "sidebar-primary": "#EDE6D6",
      "sidebar-primary-foreground": "#111111",
      "sidebar-accent": "#E8915C",
      "sidebar-accent-foreground": "#ffffff",
      "sidebar-border": "#303642",
      "sidebar-ring": "#E8915C",
      "radius": "16px"
    }
  },
  "meta": {
    "source": "katagami",
    "languageId": "en-019ef8c7-da2e-7a21-9561-83956611e887",
    "slug": "oxide",
    "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",
        "bg",
        "border",
        "error",
        "info",
        "muted",
        "on_accent",
        "success",
        "surface",
        "surface_2",
        "text",
        "warning"
      ],
      "typography": [
        "base_size",
        "body_font",
        "display_letter_spacing",
        "google_fonts_url",
        "heading_font",
        "heading_transform",
        "heading_weight",
        "letter_spacing",
        "line_height",
        "mono_font",
        "scale_ratio"
      ],
      "radii": [
        "full",
        "lg",
        "none"
      ],
      "shadows": [
        "md",
        "ring",
        "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 · oxide
DESIGN.md

at a glance

Typography

headline-lgOswald · 33px · 700

The quick brown fox jumps

headline-mdOswald · 27px · 600

The quick brown fox jumps

body-mdIBM Plex Sans · 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 Oxideand 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
Oxide
Palette
Art style
Landing Page
live preview · recolored + filled
lineage

Family

related

More like this