Code Projects

AI agents, web apps, race-day tools, and a few toys.

1st Place · TMLS 2026 Agentic Hackathon

Scoop

Bakery R&D takes 6 to 18 months. Food trends can come and go in a few weeks. For FGF Brands' challenge, our team of five built Scoop: seven AI agents and two custom ML models that go from internet chatter to a production-ready R&D brief in under two minutes, tied to FGF's actual lines and brands.

The idea came on Monday. By Thursday it worked end to end, and on Friday it took 1st out of 16 teams. Tools like Tastewise stop at a dashboard. Scoop checks every concept three ways (taste, production, financials) before anyone on the R&D team has to look at it.

Team Scoop with the TMLS and FGF Brands judges at the closing awards
Scoop demo table at the expo with QR codes for the app and video walkthrough
Scoop app home screen
  1. 01
    The Scout

    Pulls food signals from Reddit, Google Trends, consumer reviews and trade press, then clusters them into five trends with momentum scores.

  2. 02
    The Scientist

    Turns the top trend into ten product concepts, each with ingredients, format and positioning.

  3. 03
    The Selector

    Scores all ten on trend fit, brand fit, production feasibility, novelty and predicted taste.

  4. 04
    The PalateML

    TasteAI: ingredients to SMILES to RDKit features, into a PyTorch model that predicts aroma, taste and a liking score.

  5. 05
    The Engineer

    Maps the winner onto FGF's real lines and brands (Stonefire, ACE, Wonder), flags scale-up risk and builds a Year 1 P&L.

  6. 06
    The ValidatorML

    XGBoost + k-NN trained on past bakery launches: 12-month success odds, closest real comparables, and a verdict.

  7. 07
    The Marketer

    Writes three positioning options and packages the pick into a one-page R&D brief.

Claude APIPythonStreamlitPyTorchXGBoostRDKitpytrendsFRED API

Built with Daniel Fu, Eli Mindell, Nathan Tam and Kevin Kwon · Toronto Tech Week, May 2026

Mac Meal Planner

A meal-budgeting planner for McMaster students. Paste your timetable and it maps every on-campus day to dining options near your lectures, tracks spending against McMaster's own budget guide, and recomputes your daily budget each time you log your real balance. Cloudflare Pages + Functions + D1, a real OpenStreetMap campus map, no framework.

Open Planner →

Parts Locator 3D

A drivable 3D copy of my workshop for finding where my electronics and tools actually live. You drive a low-poly version of my AE86 RC drift car around the room (real suspension and a handbrake drift, on Rapier physics), pull up to a tool chest, and it snaps into a close-up where each drawer opens to show what's inside. Search for a part and a minimap plus an on-screen arrow guide you to the right drawer. React Three Fiber, Rapier, Cloudflare KV.

Coming soon

Waterloo EV Scouting

Live scouting and telemetry for our team at the Waterloo EV Challenge. Scouts tap on their phones each time a kart crosses start/finish, and a Flask server on my laptop works out lap times and average speed for every team. Our kart's Raspberry Pi streams its own ground speed over WebSocket, all on a local hotspot with no internet at the track. Flask, Socket.IO, SQLite.

View on GitHub →

Hand Driving Game

My first Claude project — a first-person 3D racing game. Use WASD / arrow keys to drive, or run the hand-tracker server locally to steer with your hands via webcam.

Open Game →

Eye Reminder

A Windows tray app that enforces the 20-20-20 eye-break rule. It counts active screen time only, pausing when you step away, then slides in a small overlay asking for a 20 second break. Electron, canvas countdown ring, starts with Windows.

View on GitHub →
Eye Reminder main window

MIDI Keys

Click keys or use keyboard: D R F T G H U J I K O L

Scribble Pad