Design

Design

The palette, type and shared components this site itself is built from — a reference, not something to reverse-engineer from the CSS.

Warm paper, near-black ink, one deep-green accent — decided once, early, and never redecided per page. Every color below is a @kirigami/canva conf token: a CSS custom property, so this whole page (and the whole site) repaints correctly in dark mode with nothing hand-toggled. Try the switch in the header.

None of these eight names are this site's invention — they're conf's own token set ($bg, $surface, $ink, $accent, …), the same eight every Kirigami project starts from and overrides through @forward "@kirigami/canva/conf" with (...). This page is what that override looks like once it's actually been used — Config → conf tokens has the full option list, including the dark-palette counterparts ($dark-bg, $dark-ink, …) this site's own dark mode is built from.

Palette

--bg

Page background

--surface

Cards, code blocks

--surface-2

A step up — nav, pills, table stripes

--border

Hairlines, outlines

--ink

Body text, headings

--ink-muted

Secondary text, captions

--accent

Links, the one brand color

--accent-soft

Accent's own quiet background


Type

Three roles, three families, all embedded locally (no Google Fonts request): Quicksand for headings, Roboto Flex for body copy, JetBrains Mono for labels, nav numbers and code. All three are declared once, in _conf.scss's $fonts map — `conf` handles the @font-face (variable-font ranges included) and the two role variables (--font-heading / --font-body); --font-mono is this site's own third role, since `conf` only ships the first two.

Heading · Quicksand

Fold PHP into flat HTML

Body · Roboto Flex

A static site generator that turns PHP into fast, dependency-free HTML — no server required.

Mono · JetBrains Mono

kiri build && kiri export

Shared components

Five small, generic patterns that kept turning up identically across Kirigami sites — lifted into @kirigami/canva's styles/main so nobody has to re-implement them. Opt-in: @use "@kirigami/canva/main"; — every one of them is conf tokens underneath, so light/dark comes for free. Each is used for real elsewhere on this site (linked below its demo), not just shown here in isolation.

Breadcrumb

A trail of links plus the current page — pairs with FS::getBreadcrumb(), which walks a page's real position in the file tree instead of a hand-maintained array. Every Docs sub-page uses exactly this.

Quick-jump list

An inline list of anchor links for a long reference page — see the top of PHP class library or CLI for the real thing, one link per `##` heading.

Table & badges

A generic data table (wrap in .table-wrap to scroll horizontally instead of widening the page) plus a small status/license tag — Ecosystem uses both for the real package/version/license grid.

Package Version License
@kirigami/kirigami v1.5.7 MIT
@kirigami/php-wasm v8.5.10-5 GPL-2.0-or-later

Palette swatches

Live — IMG::palette() run against this page's own source photo, not hard-coded. `colors()` (the Sass function version, for a value baked in at build time rather than fetched in PHP) does the same median-cut extraction; see Docs → PHP → IMG.