Live preview
Use this system
Three ways to drop Dispatch into your workflow.
Save the file for your tool — your agent then generates UI in Dispatch, automatically.
CLAUDE.mdRepo root — Claude Code reads it automatically.
.cursor/rules/dispatch.mdcProject rule — applied to every generation.
.windsurfrulesRepo root — Cascade reads it automatically.
.github/copilot-instructions.mdRepo-wide custom instructions for Copilot.
The system
Brand & Voice
Dispatch is made for words. A readable serif body, a clear blue for links and calls to subscribe, and surfaces that get out of the way. The tone is personal and considered — a newsletter you actually open.
Layout & Grid
One generous reading column with deep line-height and clear section breaks. Inline subscribe prompts use the brand blue; everything else stays text-first.
Components
Buttons
Subscribe and share buttons in color.brand.primary at radius.md. Inline links
are underlined and unmistakable.
Post Cards
Title, dek, and reading-time on color.surface.raised, divided by soft borders;
hover lifts with a faint shadow.md.
Accessibility
Large, high-contrast reading: primary and muted text pass WCAG AA on every surface. Measure is capped for comfort and focus rings are always visible.
Tokens
Color (14)
Tokens
Export
One source of truth, five formats — copy or download any of them.
---$schema: https://designmd.in/schema/v1.jsonid: dispatchname: Dispatchtitle: Dispatch — Newsletter & Blogversion: 1.0.0category: editorialtags: [editorial, blog, newsletter, blue, reading]author: designmdlicense: CC-BY-4.0updatedAt: 2026-06-22colorMode: [light]tokens: color: brand: primary: { value: "oklch(0.5 0.16 255)", type: color } secondary: { value: "oklch(0.55 0.13 200)", type: color } onBrand: { value: "oklch(0.99 0 0)", type: color } text: primary: { value: "oklch(0.2 0.008 255)", type: color } muted: { value: "oklch(0.44 0.012 255)", type: color } link: { value: "{color.brand.primary}", type: color } surface: base: { value: "oklch(0.99 0.002 255)", type: color } raised: { value: "oklch(1 0 0)", type: color } sunken: { value: "oklch(0.96 0.004 255)", type: color } border: default: { value: "oklch(0.89 0.006 255)", type: color } state: success: { value: "oklch(0.55 0.14 150)", type: color } danger: { value: "oklch(0.55 0.2 25)", type: color } warning: { value: "oklch(0.68 0.14 70)", type: color } info: { value: "oklch(0.55 0.13 245)", type: color } typography: family: serif: { value: "Source Serif 4, Georgia, serif", type: fontFamily } sans: { value: "Inter, system-ui, sans-serif", type: fontFamily } mono: { value: "ui-monospace, monospace", type: fontFamily } scale: sm: { value: "0.9375rem", type: dimension } base: { value: "1.125rem", type: dimension } lg: { value: "1.4rem", type: dimension } xl: { value: "1.8rem", type: dimension } "2xl": { value: "2.4rem", type: dimension } "3xl": { value: "3.2rem", type: dimension } weight: regular: { value: 400, type: fontWeight } bold: { value: 700, type: fontWeight } leading: tight: { value: 1.2, type: number } normal: { value: 1.7, type: number } spacing: base: { value: "0.25rem", type: dimension } radius: sm: { value: "0.375rem", type: dimension } md: { value: "0.5rem", type: dimension } full: { value: "9999px", type: dimension } shadow: sm: { value: "0 1px 2px oklch(0.2 0.01 255 / 0.06)", type: shadow } md: { value: "0 6px 18px oklch(0.2 0.01 255 / 0.08)", type: shadow } motion: duration: base: { value: "180ms", type: duration } easing: standard: { value: "cubic-bezier(0.25, 0, 0.15, 1)", type: cubicBezier } breakpoint: md: { value: "768px", type: dimension } iconography: style: { value: "1.5px stroke, simple, readable", type: descriptor } zIndex: dropdown: { value: 1000, type: number } modal: { value: 1300, type: number }---# Dispatch Design System## Brand & VoiceDispatch is made for words. A readable serif body, a clear blue for links andcalls to subscribe, and surfaces that get out of the way. The tone is personaland considered — a newsletter you actually open.## Layout & GridOne generous reading column with deep line-height and clear section breaks.Inline subscribe prompts use the brand blue; everything else stays text-first.## Components### ButtonsSubscribe and share buttons in `color.brand.primary` at `radius.md`. Inline linksare underlined and unmistakable.### Post CardsTitle, dek, and reading-time on `color.surface.raised`, divided by soft borders;hover lifts with a faint `shadow.md`.## AccessibilityLarge, high-contrast reading: primary and muted text pass WCAG AA on everysurface. Measure is capped for comfort and focus rings are always visible.