Design systems
DESIGN.md → tokens, fonts, type scale.
design-systems/editorial/DESIGN.md
Content-first magazine system — warm paper, ink-black type, serif headlines and a single vermilion accent. Best for blogs, publications, docs-as-essays, portfolios and long-form product storytelling.
Legacy preset · install only when explicitly selected. New design directions start from real references and a working composition.
pnpm dlx shadcn@latest add @design-infra/theme-editorialType scale
Body copy sits on the canvas with enough contrast to read for minutes, not seconds. Links look like this, and inline code like this.
One registry for themes, blocks and curated components — installable with a single command.
Pick a design system, pull components, keep agents on-brand.
DESIGN.md → tokens, fonts, type scale.
~1,000 components, ranked.
find-component, pick-design-system.
Spotlights, beams, orbs.
npx shadcn add @oc/…
Start free, upgrade when your team grows.
For side projects.
$0/mo
For growing teams.
$20/mo
Custom contracts.
Custom
$48,210
12.4%increasevs. last month
8,904
3.2%increasevs. last month
2.1%
0.6%decreaselower is better
182ms
18.5%increasevs. last week
/pricing converts worst at 1.8% (site average 4.1%). Two likely causes:
Enterprise question has no answer.select page, signups::float / sessions as cvr
from page_stats order by cvr asc limit 3;Editorial treats the screen like a well-set page. The words are the product; the interface is the typesetting around them. The personality is literate, confident and unhurried — think a serious weekly magazine or a small independent press that happens to ship software. Readers should feel invited to slow down.
The light mode is the canonical one: warm uncoated paper, near-black ink, and a single vermilion used the way a printer would use a second spot colour — for kickers, links, the one call to action, and the occasional drop cap. Dark mode is "reading lamp": a deep warm brown-black with parchment text and a brighter, coral-leaning vermilion.
Hierarchy comes from type scale, rules and whitespace — not from boxes, shadows or colour. If a layout needs a card to make sense, first try a hairline rule and more space.
foreground at 2px instead.Dark mode mirrors the roles: dark-background #14120F, dark-foreground #EDE6D9 parchment,
dark-primary #E2643F with ink-dark text on it (5.5:1), dark-muted-foreground #A39888.
Three families, each with a single job:
Use old-style figures in running text where Inter supports them (font-variant-numeric: oldstyle-nums) and tabular figures in tables. Never set body text in the serif, and never
set headlines in Inter.
A 12-column grid at 1080px max with 32px gutters, but reading text always sits in a single 680px measure (about 66–72 characters at body-lg). Pull quotes, figures and asides may break out to the full 1080px or hang in the margin.
The spacing scale is 8px-based with large jumps: 24px between paragraphs and blocks, 48px between sections, 96px between major story chapters. Headlines get more space above than below (2:1). Lists of stories are laid out like a contents page: kicker, headline, dek, byline, separated by hairline rules — not by cards.
This is a flat, printed system. There are no drop shadows on content. Depth is expressed
by (1) paper tone — background → card → popover, each a shade lighter; (2) rules — 1px
border hairlines between items, 2px foreground rules above section heads; and (3)
whitespace. Popovers and dialogs may use a single soft shadow (0 12px 32px -12px #1A171433) because they float above the page; nothing else does.
Shapes are square-cut. --radius is 2px (rounded.lg) — just enough to take the edge
off buttons and inputs. Cards, images, pull-quote boxes and badges use rounded.none.
rounded.full is reserved for author avatars. Images are full-bleed or sit flush in the
column with a mono caption beneath; never round photo corners.
accent.border, 24px padding — use for asides and
callouts, not for story lists.input border, 44px tall, 2px radius; label above in label-md;
helper text in body-sm muted. Focus = 2px vermilion outline.BY ADA PARK · OCT 1, 2026.Motion language: still (MOTION.md). The type is the show; nothing moves for decoration.
cubic-bezier(0.25, 0.1, 0.25, 1); never springy.prefers-reduced-motion: disable everything except opacity.You are designing in the Editorial system: a content-first, magazine-style interface on warm paper (#F6F1E7) with ink text (#1A1714) and one vermilion accent (#B83A1B, #E2643F in dark mode). Set headlines in Instrument Serif at weight 400 (italic for emphasis), body and UI in Inter with long-form text at 18px in a 680px column, and kickers, bylines and metadata in uppercase IBM Plex Mono. Build hierarchy with type scale, hairline rules and generous whitespace rather than cards, shadows or colour fills; radius is near zero (2px on controls, square everywhere else). Motion is quiet — soft fades, text reveals and scroll-linked progress only. Use shadcn/ui primitives restyled flat, and prefer contents-page lists, pull quotes and full-bleed figures over dashboards and bento grids.