Work

Selected work

Three things I've actually shipped: a live app built around how people actually move, a backend built to get money handling right, and a team platform where I owned the code-generation engine.

01

Travel Mate

Minibus taxi routes in South Africa are coordinated almost entirely by word of mouth. Travel Mate gives commuters a way to post and check route availability in real time.

  • Live route and stop alerts backed by a REST API
  • JWT authentication for posting and managing alerts
  • PostgreSQL schema designed around real commuter routes, not a generic CRUD demo
React · TypeScript · Node.js · Express · PostgreSQL
02

FinTrack

A personal finance API built to get money handling right, not just feature-complete. Amounts are BigDecimal end to end, so a balance never drifts by a cent. JWT auth, Dockerised, deployed on AWS.

  • BigDecimal throughout — no floating-point rounding on money
  • JWT auth with refresh, and a Dockerised deploy to AWS (RDS, S3, SES)
  • Documented with Swagger; unit and integration tests around the transaction logic
Java · Spring Boot · AWS · PostgreSQL · Docker
03

PromptForge

A four-person build: a platform that turns a natural-language app description into a generated full-stack project, pushes it to a new GitHub repository, and deploys it. I owned the code-generation engine and the validate-and-repair loop that stops generated code shipping broken.

  • Validate-and-repair loop — parses tsc and ESLint output into structured failures, then maps each one to the files that need repairing
  • Generation engine split behind interfaces (planner, scaffolder, refiner, validator) so each stage is testable on its own
  • GitHub OAuth and API automation: generated projects land as real repositories and deploy, rather than downloading as a zip
C# · .NET 9 · ABP · Next.js · PostgreSQL
Live · TeamOpen the app →