A visual thinking surface for prioritising, planning and organising the same set of items through multiple lenses — built for people and AI agents to use together.
- React
- TypeScript
- MCP
- Supabase
Selected projects
I build to understand. Some of these started as a question, a workshop problem or a deliberately small experiment; stronger and more complete work appears first, with narrower experiments and projects still being polished further down.
A visual thinking surface for prioritising, planning and organising the same set of items through multiple lenses — built for people and AI agents to use together.
Turns spreadsheet-style skills data into clean, grouped capability charts that are easy to read, present and export as images.
A tactical rainforest strategy game with human play, explainable heuristic opponents, Monte Carlo Tree Search, replays and large-scale simulation.
An AI cooking coordinator that works backwards from serving time, lines up multiple recipes, adapts the timeline when cooking slips and supports hands-free kitchen use.
A focused AI-assisted user-story writer with anonymous generation plus authenticated history and favourites, backed by a separate API service.
A browser-based utility for turning movie clips into GIFs while skipping redundant frames to keep the result more efficient.
An AI-assisted survey toolkit for designing surveys, running interviews and analysing the resulting responses.
A multiplayer movie-plot guessing game combining real-time rooms, shared state and deliberately terrible descriptions of films.
A room-based multiplayer image game with separate host and player experiences, real-time Socket.IO play, full-stack browser tests and accessibility checks.
Anonymous team-health and Tuckman-stage voting tools for making team conversations visible without turning them into performance theatre.
Compare options against criteria in a colour-coded matrix, edit ratings quickly and save named heatmaps locally for later discussion.
Turns recipe steps into a cooking schedule that works backwards from the time you want everything finished.
A modern Reveal.js training experience for teaching React, backed by automated linting, browser smoke tests and end-to-end checks.
A deliberately small, zero-dependency retro dot-matrix scrolling ticker implemented as a modern Web Component.
A dependency-free animated word cloud for modern browsers — a compact example of using the platform directly when a framework is unnecessary.
A Contentful-powered site for Malawi’s premier arts festival, combining editorial content, artist pages, image-rich presentation, draft preview and on-demand revalidation.
A collaborative drag-and-drop seating planner first built in 2012 and kept alive with a modern Node, Express, Socket.IO, persistence and browser-testing toolchain.
A deliberately lightweight Web Audio and canvas playground that turns local audio into animated browser visualisations without requiring a frontend framework.
A small TypeScript playground for modelling working weeks, work hours and public-holiday sets while keeping the original domain model visible and editable.
An interactive organisational AI-readiness assessment across six dimensions, with speech input, heuristic response scoring, progress tracking and report generation.