Skip to main content

How this site is built

A few things I decided on purpose, each one something you can check yourself.

Measured

Accessibility
100/100 · /en · Lighthouse 13.5, mobile ·
Cumulative layout shift
0 · /en · Lighthouse 13.5, mobile ·

Design notes

9

  1. 1. Focus you can always see

    Whatever has keyboard focus shows a ring in the accent colour. It appears the instant focus lands and never fades in.

    Check it: Press Tab anywhere on the site.

  2. 2. Still for Reduce Motion

    Where the browser has WebGPU, the dk mark scatters under a cursor, and on touch it drifts slowly on its own. With Reduce Motion on it's a flat monogram and no GPU work runs.

    Check it: Turn on Reduce Motion and reload the home page.

  3. 3. Card titles fit a 320px phone

    Card titles are capped at 26 characters by a test, so none is truncated on a 320px phone.

    Check it: Narrow the window to 320px and look at the cards in Selected work.

  4. 4. Demos rest off screen

    Each animated demo only runs while you can see it. Scroll it away and it stops; scroll back and it starts from the beginning.

    Check it: Scroll a demo out of view and back.

  5. 5. Underlines don't shift the text

    Underlines are drawn at rest in a transparent colour, so hovering only colours them in. Nothing on the line shifts.

    Check it: Hover a post title and watch the text beside it.

  6. 6. Quiet text is still readable

    The lightest text you are asked to read measures 5.1:1 on the page ground. The fainter grey is only ever decoration.

    Check it: Check a date in the Writings list with a contrast checker.

  7. 7. Reduce Motion is respected

    With Reduce Motion on, every transition becomes instant, entries stop travelling, and demos hold one still frame.

    Check it: Turn on Reduce Motion in your system settings and reload.

  8. 9. The nav says where you are

    The current page sits on one chip that slides between places, and screen readers hear it as the current page.

    Check it: Move between Work and About; use a screen reader on the nav.