Population Names Pipeline
A full-stack data engineering project that ingests forename and surname data from 13 UK, Irish, and US government sources, transforms it through a medallion architecture (dbt, PostgreSQL), and serves it via FastAPI with Superset dashboards. Orchestrated by Airflow 3 with asset-driven DAGs, per-source quality gates, and rejected-row tracking. Runs locally with Docker Compose and includes an optional AWS deployment using Terraform, ECS Fargate, and RDS.
PythonFastAPIAirflowdbtPostgreSQLDockerTerraformAWS
Soccer Juggling Game
A physics-based soccer juggling game built with React, TypeScript, Canvas 2D, and Matter.js. Features a guided tutorial, combo scoring, collectibles, configurable settings, and high score tracking. Click the soccer ball in the nav bar to play!
ReactTypeScriptMatter.jsCanvas
Soccer Management Sim
A UI-intensive soccer management game featuring a procedurally generated, realistic world, a headless and fully testable simulation core, modular domain APIs, complex table-driven management interfaces, and RPG-style player progression systems.
GodotC#Game Design
Summit (roguelite homage to Joust)
Team capstone project for Game Design Certificate. A vertical-scrolling roguelite built in Unity with modular player and enemy control systems, weapon systems, in-game UI, and automated builds and testing for deployment on Itch.io.
UnityC#Game Design
Farming Sim
A Unity-based farming sim being built collaboratively with two teammates. Owning core systems including save/scene persistence, UI, localization, automated tests, inventory, time simulation, and service-location infrastructure.
UnityC#Game Design
Spritesheet Unpacker
A cross-platform desktop app for slicing spritesheets and exporting selected slices. Supports auto-detection of irregular sprites via transparency and grid-based slicing with configurable cell dimensions and margins.
C#Avalonia.NET
Blog & Photo Gallery
A personal blog and photo gallery site for sharing travel photography and writing.
AstroReactTypeScript
Portfolio Site
This portfolio site, a React SPA with TypeScript, Tailwind CSS, Vitest, Cypress, and CI/CD via GitHub Actions. Deployed on Netlify.
ReactTypeScriptTailwind CSSViteVitestCypress