colophon

updated · how this site is made, and what it refuses to do.

how it's built

hand-written html, css and a little javascript. no framework, no build step, no bundler, no package manager, no dependencies. the repository is the website: what's in the folder is what deploys, through cloudflare pages. view source; it's meant to be read.

the stylesheets are six small files linked in order, never @imported, because @import hides each file from the browser until its parent has loaded. the server also sends them as early hints, so the browser starts fetching before the html arrives.

type and colour

everything is set in merriweather, by sorkin type, self-hosted: two cuts, latin and latin-ext, roman and italic. everything is lowercase. the palette is greys. there are exactly two accent colours, a highlighter yellow for things worth marking and a gold that marks a featured post. there is one shadow on the whole site, and almost no animation.

what a page weighs

measured from the files in the repository, gzipped at level 9. cloudflare may send brotli, which is a little smaller. the font is cached for a year after the first visit.

pagehtmlcssjswith font
home6.9 kb15.4 kb3.6 kb121.2 kb
d's labs5.0 kb15.4 kb3.2 kb118.9 kb
an explainer4.8 kb16.1 kb2.5 kb118.6 kb
a reflection2.4 kb15.4 kb2.5 kb115.6 kb
now2.3 kb15.4 kb2.5 kb115.5 kb

the font is 95.3 kb and is the heaviest thing on a first visit. lighthouse scores aren't recorded yet; when i run them on a throttled phone profile, they go here.

what it refuses to do

small things