applied ai engineering · london

Jamal Ofori‑Adu.

I run a physiotherapy clinic and build the software that runs it. Production web apps in React and TypeScript, agents, evaluation-gated releases, live products with paying customers. Eight years HCPC-registered, still practising.

fashion, music, design, sport, sales, then software. the rooms changed; the discipline didn't.

Selected work

every claim carries a receipt

StrydeOS↗

founder · live

An AI operating system for UK physiotherapy clinics, live in two clinics. Multi-tenant B2B SaaS on Next.js and TypeScript; sole builder across engineering, product, security and commercial delivery. Includes Ava, a voice agent on real clinic phone lines that books real appointments, and Pulse, which scores 579 patient records into lifecycle cohorts.

release gate 300+ simulated callers
deploys block under 95% or on any P0

Evidence↗

open source · mirror

An evidence-based clinical knowledge resource: curated guidelines and protocols answered with citations constructed in code, never authored by the model. Multi-turn answers keep their sources across a thread. Runs on open-weight models on-device: Qwen, and a Gemma I distilled and fine-tuned for clinical reasoning. RAG and a recursive learning loop underneath; sqlite-vec, zero query-time egress, sealed per-clinic instances.

eval 100% red-flag recall · 95% refusal gate
the failing metric ships too

Peoples of Africa↗

webgl · live · open source

A 3D terrain diorama of the continent's peoples and heritage: 835 ethnographic groups joined across three academic datasets, story vignettes that reveal as you explore, cartographic type laid out on camera settle.

perf load staged 37s → 5.5s TTI
gate verify harness 23/23

Injury Time↗

webgl · live demo · open source

Football management for non-league: squad-load and injury-risk tracking (ACWR), an FM-style readiness hub, an interactive 3D pitch with auto-picked XI, and a 3D body map per player. In use at a couple of clubs.

stack next.js · supabase · r3f
data live demo runs a fictional club

Driiva

insurtech · client build

Web (React, Vite, Firebase) and mobile (Expo) clients over one identity layer, rebuilt and cut over in production. Insurer and Stripe webhooks hardened for production.

gate 535-test suite
cut over in production

TradeMind

client work · in production

A voice-first operations app for UK electricians: live dictation into certificate generation, a compliance vault, receipt-scan RAG and Stripe Connect payouts. Scoped, contracted, delivered and handed over end to end.

state live · stripe in production
client portal + weekly changelog

Shippers Studio↗

the studio

The product studio the rest of this ships from. Its own site is a six-act scrollytelling piece driving one WebGL aperture rig, with a command palette hiding in the keyboard.

site one webgl rig, six acts
press / when you get there

How I ship

Nothing reaches a user on vibes. Releases pass simulated-caller evaluation gates, design gates and verify harnesses before a human sees them, and a red gate stops the ship.

The unflattering number gets published too. A scorecard that hides its failures is marketing; one that prints them is engineering.