A curated selection of things I built that didn't immediately catch fire in production. Results may vary.
Clinical Portal
Patient-facing platform for a healthcare provider. Built document signing with audit trails, photo capture and management, dark mode theming (the real MVP feature), real-time notifications, and multi-stage QA review workflows used daily by clinical teams. No patients were harmed in the making of this software.*
Angular
NestJS
PostgreSQL
Football League Internal Tools
Multiple internal applications supporting league operations — from component libraries and design systems to photo and video annotation tools, CRM features, and event management platforms. Yes, I did get to visit the offices. No, I did not meet any footballers. Yes, I'm still bitter about it.
Angular
NestJS
TypeScript
Storybook
Figma
Consulting Dashboard
Internal platform for a consulting firm. Architected the Nx monorepo, established CI/CD pipelines, and delivered content management features with shared component libraries. The kind of project where "architected" means "spent three days arguing about folder structure in a PR review."
Angular
NestJS
PostgreSQL
Nx
Scraps
Personal media archive for organising a large photo and video library. Features perceptual duplicate detection, interactive Mapbox maps with time-slider filtering, and Adobe Lightroom catalogue integration. The kind of side project you build to avoid organising your photos manually, which would have taken a fraction of the time.
TypeScript
Docker
PostgreSQL
Mapbox
Raspberry Pi