Everything it does

The features

A complete inventory of what this website does, sorted honestly by how much of it was necessary.

Defensible

Two colour themes

Light and dark, with a toggle

Follows your system preference on arrival and remembers your choice after that. Both palettes were checked for contrast rather than eyeballed. This one I will actually defend.

Defensible

Reduced-motion support

Disabled, not merely reduced

If your system asks for less motion, every animation here stops existing — the canvas never starts, the reveals resolve instantly, the grain and spotlight are removed. Not dimmed. Gone.

Defensible

Works without JavaScript

Genuinely, not theoretically

Turn scripting off and every section is readable, with the real figures already in the markup. This was broken for most of the build and only caught because it was actually tested.

Aa
Defensible

Self-hosted typefaces

Four files, subset and instanced

Cut to Latin plus the punctuation actually used, then trimmed to the axis ranges the stylesheet requests. A third smaller than the originals, and no font server ever sees you.

Unnecessary

Scroll-reveal choreography

Staggered, blur-in

Sections rise, unblur and fade in, with siblings staggered so grids cascade instead of landing as one slab. Costs nothing at rest. Justifies nothing at all.

Unnecessary

Count-up statistics

Eased, tabular figures

The numbers animate up from zero when they scroll into view. The numbers are between zero and 452. Two of them are zero, and they animate from zero, to zero.

Unnecessary

Cursor spotlight

Lerped, so it lags slightly

A soft warm glow trails your pointer, deliberately a fraction behind so it reads as light rather than a sticker. It cancels its own animation frame when it catches up, so an idle mouse costs nothing.

Unnecessary

Constellation field

Canvas, capped and throttled

Drifting points that draw lines to their neighbours. Particle count scales to your viewport, pixel ratio is capped at two, links are skipped on narrow screens, and the whole thing halts when the tab is hidden.

Unnecessary

Film grain

An inline SVG turbulence filter

There is a defence: large soft gradients band badly on cheap panels, and a little noise hides it. There is also the truth, which is that it looks nice.

Deeply unnecessary

A rotating wax seal

Circular text on an SVG path

Text set around a circle, turning slowly, forever. It is the single least justifiable element on this website and the first thing I would save from a fire.

Deeply unnecessary

A confetti cannon

150 pieces, with gravity and drag

Physics were written for this. Individual pieces have rotation, air resistance and a fade curve. It fires when you click the seal, and on the Konami code.

?
Deeply unnecessary

Maximum Humility mode

Konami code

Up, up, down, down, left, right, left, right, B, A. The entire page cycles through every hue while confetti falls. There is no way to reach this by accident, which was the point.

Four defensible features, five unnecessary ones, three deeply unnecessary. My dad’s website has none of these and sells storage units to actual paying humans every day.