Colophon

How This Site Is Made

A quiet inventory of the tools, type, performance choices, accessibility details, and publishing decisions behind this website.

Astro

Fast static pages with content collections.

MDX

Long-form writing with components when needed.

Vue

Small islands for interactive surfaces only.

Principles

This site is built to stay lightweight, legible, and easy to maintain. Static pages carry most of the work, with interactive islands reserved for places where they make browsing meaningfully better.

Card

Dondi Bogusky

Web technologist

Portrait of Dondi Bogusky
hello@dondi.cc

Framework

Astro

Content-first pages, static output, and small client-side islands when the interface calls for them.

Interface

Tailwind CSS

Utility classes handle layout and rhythm, with a small global layer for site tokens and reusable text treatments.

Type

Inter and JetBrains Mono

Inter carries UI and prose; JetBrains Mono handles code, labels, eyebrows, and metadata.

Search

Pagefind

Local search is generated at build time, keeping the archive searchable without a hosted search service.

Editor

Zed

The site is written and maintained in Zed, with formatting and build checks keeping the workspace consistent.

Images

Sharp and Static Assets

Open graph images are generated from SVG sources, while portfolio images are served as local static assets with modern formats where available.

Design

Typography and color

How reading rhythm and theme tokens stay consistent across notes, lists, and interface surfaces.

Typography

Reading and rhythm

Inter · JetBrains Mono

Inter is self-hosted fromsrc/assets/fonts through the Astro Fonts API as a Latin-focused variable WOFF2 subset. The normal face is preloaded; italic loads on demand. OpenType features include standard ligatures, contextual alternates, and slashed zeros, with font-optical-sizing: auto. Body and UI text keep normal letter spacing; headings tighten on a small tracking scale (-0.006em to -0.02em) as sizes grow, following Inter's dynamic metrics.

JetBrains Mono covers inline code, code blocks, timestamps, labels, eyebrows, and category tags at 13px with tabular figures and slashed zeros. iOS falls back to static Inter TTF cuts when variable fonts are unreliable.

MDX articles use the .prose-site scale: 17px body copy at 1.75 line height, capped near 68 characters. Headings stay semibold and compact — page titles scale up totext-6xl, section headings sit around text-2xl totext-4xl, and eyebrows are uppercase mono labels with a cyan-to-magenta gradient.

display36–60px · 600 · tracking-display · leading-golden-display
Field notes on paper
heading30px · 600 · tracking-heading · leading-golden-heading
A quiet, durable archive
title20px · 600 · tracking-title · leading-golden-heading
Card titles and list links carry the middle register
prose17px · text-prose · 68ch measure
Body copy sits at 17px with 1.75 leading on a 68ch measure. Ligatures and slashed zeros are on everywhere, so 0 never reads as O. Links inside prose are quiet cyan with a soft underline.
weight rangeone variable file covers all nine
Aa100 thin
Aa200 extralight
Aa300 light
Aa400 regular
Aa500 medium
Aa600 semibold
Aa700 bold
Aa800 extrabold
Aa900 black
Aa400 italic
metadata13px mono · tracking-meta · slashed zero, tabular figures
·--leading-golden-heading: 1.382

Uppercase eyebrow label

Color

Tokens and contrast

--color-* · light and dark

Colors live as CSS custom properties in src/styles/global.css. ink and paper anchor primary text and page backgrounds; surface lifts cards and inputs; muted, soft, and faint step supporting copy from body text down to dates and metadata.

cyan is the primary interaction color — links, selected topic filters, primary-button hovers, and scrollbars. magenta is editorial: blockquote borders and eyebrow accents. blue and violet handle quieter structural moments; electric-cyan and electric-magenta appear in gradients, the favicon, and the soft radial glows behind the page.

Light, dark, and system modes resolve before paint via an inline script inBaseLayout.astro, stored in localStorage assite-theme. Hex and rgba values are the baseline; browsers on wide-gamut P3 displays get OKLCH overrides. Text selection inverts the ink/paper pairing so highlighted copy stays readable in both modes.

ink and paperindigo-tinted neutral ramp

inkprimary text
paperpage background
surfacecards, panels
mutedbody copy
softsecondary text
faintmetadata
linehairline borders, transparent
quiethover wash, transparent

accentssignal, editorial, and glow-only stops

cyanlinks, focus
bluestructural accent
violethighlight accent
magentaeditorial accent
electric-cyanglow only, not text
periwinkle-violetglow only, not text
electric-magentaglow only, not text
disableddisabled controls

roles in usehow the tokens read on paper

A quiet cyan linkGradient labelSelectionFaint metadata