Projects

A short overview of what I've been working on for the past 5-6 months. This is just the beginning — expect much cooler things. Check out my Github to see what else I've been working on.

Headway (Repo)

Python · FastAPI · React · Vite · MapLibre GL · TransLink GTFS · Gemini

Built with a team of three at StormHacks 2026. A transit housing scorer for students hunting off-campus housing — search an address and get a 0-10 score from real TransLink GTFS data across four weighted factors (commute time, bus frequency, late-night service, walk distance) instead of one black-box number. Draws the real route on the map, including actual SkyTrain track geometry, and generates a plain-English verdict via Gemini without blocking the score on it.

AstraFetch (Repo)

C++ · cpr · vcpkg · nlohmann::json · Dear ImGui · Catch2

A concurrent, segmented HTTP download manager in C++. Runs downloads across a fixed pool of three worker threads pulling from a shared queue, splits a file into concurrent Range-request segments for faster transfers, and supports cooperative pause/resume/cancel with no orphaned temp files. History persists to disk as JSON across restarts, driven by a console interface with a Dear ImGui window layered on top for live, interactive control.

Ferguson (Repo)

Go · Bubbletea · Lip Gloss · Fantasy Premier League API · Google Gemini · Groq

A terminal-based Fantasy Premier League dashboard built in Go using the Bubbletea TUI framework and Lip Gloss for styling. Pulls real Premier League data directly from the Fantasy Premier League API — squad, fixtures, and fixture-difficulty — and integrates Google Gemini (with a Groq fallback) to generate an AI “manager’s verdict”: a captain pick, bench call, and transfer suggestion based on the real squad data.

ColorStack SFU Slack Bot (Repo)

Python · Slack Bolt · Supabase (PostgreSQL) · AWS EC2 · systemd

A Slack bot built for the ColorStack SFU chapter, running 24/7 on AWS EC2. Welcomes new members with a personalized DM, posts the daily LeetCode challenge and tracks solves and leaderboard standings through Supabase, scrapes a Canadian tech internships repo four times a day to surface fresh postings, and drops motivational content twice a week — all running as a systemd service with full event logging.

LeetGrind (Repo)

TypeScript · React Native · Expo · Supabase Auth

A mobile accountability app for LeetCode/DSA practice. Features a stats screen with streak tracking, a GitHub-style activity heatmap, per-topic weak-spot breakdowns, and a solved-per-day chart, plus a study-group screen for streak-based accountability with friends. Authentication is handled through Supabase with GitHub and Google OAuth sign-in.

Student Analytics API (Repo)

Python · FastAPI · Pydantic · pytest

A custom multi-API service for tracking how students learn, built because I couldn't find an existing product that did it. Each Q&A interaction gets logged with a per-topic “confusion score,” and a summary endpoint turns that raw log into a per-student read — average confusion, most and least confused topics, and a trend (improving, declining, or stable) computed from their last five interactions against their running average. Rounded out with filtering/pagination and a delete endpoint, backed by a pytest suite.