← Design System

Brand guidelines

Logo

The repository ships three source marks in src/, each exported to PNG at many sizes.

MarkUse
Squarecodecave.svgAvatars, favicons, app icons
Widecodecave-wide.svgSite headers, letterheads, horizontal lockups
Tallcodecave-tall.svgVertical lockups, portrait layouts

Wide and tall marks come in four treatments: text-white (default, for dark backgrounds), text-black (for light backgrounds), and all-white / all-black single-colour versions for one-ink printing.

Because CODECAVE is dark-first, text-white on the near-black surface is the default pairing. Use text-black only on a genuinely light surface.

The wordmark is outlined vector paths, not live text — it does not depend on an installed font, and it must never be re-typed by hand to fake a missing size. Export from src/.

Colour

Type

One family: Satoshi. Headings bold, long-form copy regular, lead paragraphs light.

The signature pattern is the eyebrow: short bold text in --color-action, directly above a larger light lead line. Use it to open a section rather than inventing a new heading treatment.

Only Satoshi Regular (400) ships as a real font file — light and bold are synthesized by the browser. Don't specify weights the brand can't render.

Shape

Small radii (2–4px) read as generic and off-brand. Section panels carry an upward violet glow (--shadow-section) — the light source sits below the panel edge. This is unusual; keep it, and don't replace it with a conventional drop shadow.

Motion

The production site uses GSAP with scroll-driven pinning and a Lenis smooth-scroll wrapper. Motion is slow and continuous rather than snappy. All of it collapses under prefers-reduced-motion: reduce, which styles.css enforces globally.

What not to do