Built for everyone.
I teach learners at every level, and this site should work for all of them. It aims to meet the Web Content Accessibility Guidelines (WCAG) 2.2 at level AA.
What is in place
Display settings
Text size, high contrast, readable font (Atkinson Hyperlegible), text spacing, underlined links, a large cursor, and a switch that stops all animation. Open them with the accessibility button in the navigation bar.
Reduced motion
If your device asks for reduced motion, the 3D scenes render as still images and scroll animations are turned off automatically.
Keyboard access
Every link, button and form works with a keyboard. A “Skip to main content” link appears on the first Tab press, and focus is always visible.
Screen readers
Pages use real headings, landmarks and labels. Decorative visuals are hidden from assistive technology, and form errors are announced.
Colour and contrast
Text meets WCAG 2.2 AA contrast in both light and dark themes, and colour is never the only way information is shown.
Zoom and small screens
Layouts reflow down to 320 pixels wide and up to 400% zoom without sideways scrolling, and touch targets are sized for fingers.
Known limitations
- Blog comments are provided by giscus, a third-party service. Its accessibility is outside my control; you can always reach me by email instead.
- Project previews are screenshots of live sites. Each one links to the real site, which has its own accessibility support.
- Some older blog posts may have images with brief descriptions. I am improving them over time.
Found a barrier?
If something on this site is hard to use, please tell me what page you were on and what happened. I aim to reply within two business days and fix problems quickly.
Report an accessibility issueLast reviewed September 2026