Building full-stack tools, automation, and product-focused software.
|
🧩 Wordoku ↗
SwiftUI letter-sudoku app with hidden-word reveals, daily challenges, streaks, and local-only progress. Swift SwiftUI App Store
|
🧰 DevFolio ↗
Desktop app that analyzes local repositories and turns engineering signals into portfolio and resume material. Next.js TypeScript FastAPI Electron
|
|
⚙️ CommitGen ↗
Go CLI that generates structured commit messages from git diffs and integrates with git hooks. Go Git CLI
|
🌐 Course Hover Info ↗
Chrome extension that surfaces UBC grade distributions and professor ratings directly in university pages. JavaScript Chrome Extensions
|
- Strive App — Android fitness prototype for goals, workout discovery, and social progress sharing.
- Amazons Game AI — Java game AI using Monte Carlo Tree Search and heuristic evaluation.
- Super Bug Zapper — JavaScript/WebGL 2D and 3D game demos with real-time rendering.
- Honours thesis, UBC Okanagan: Diffusion-based code generation.
- Directed studies, BC Cancer: Natural language processing.
- Wordoku AI: Exploring neural-guided constraint search for puzzle solving.
- Contract receipt pipeline: OpenAI Vision + WhatsApp workflow with retry queues, dead-letter handling, stale-confirmation suppression, deployment validation safeguards, and ~0.78s median webhook/agent response; extraction and retries run asynchronously.
- Kubetail: Kubernetes authorization caching, log-access RBAC, and Ubuntu architecture CI coverage.
- Nautobot: Fixed a crash when the cache timeout setting is missing.
- Grafana k6: Improved error wrapping in browser actionability functions.



