projects

some things that i've been working on.

Scuttle.gg

2025—now

league analytics + ML draft intelligence

Scuttle lets you search any Riot ID and see ranked progress, champion mastery, and match history across 11 regions. under the hood it's a full authenticated app — GitHub sign-in, saved search history, and a caching layer that keeps it fast under Riot's rate limits. the standout feature is draft intelligence: a separate machine learning service that scores a 10-champion draft against a model trained on nearly 15,000 ranked matches, and lets you swap a single pick to see how the score shifts.

Next.js · React · TypeScript · Tailwind CSS · Framer Motion · Recharts · NextAuth · MongoDB · Upstash Redis · FastAPI · scikit-learn

StudioFlow

2026—now

collaborative workspace for creative teams

StudioFlow gives creative teams a structured, permissioned workspace for content work — projects, tasks, comments, and shared assets all live in one place, with role-based access control across 3 user roles enforcing who can see and touch what at the API level.

Next.js · React · TypeScript · Node.js · Express · Tailwind CSS · shadcn/ui · Radix UI · Prisma · PostgreSQL · Clerk · Docker · AWS

Outfit Picker

2025

outfit planning + AI-assisted visualization

Outfit Picker is a full-stack app for visualizing outfits before you commit to them. you upload tops and bottoms into two browsable carousels, add a reference photo of yourself, describe a theme, and the backend generates an AI try-on image with Gemini. it's built as a complete product loop — a Next.js frontend talking to a FastAPI backend, file storage, and an external generation API with caching and a fallback path when the quota runs out.

Next.js · React · Tailwind CSS · FastAPI · Python · google-genai

Storm

2025

street-level flood-risk analysis

Storm analyzes flood risk for any location by combining computer vision with environmental data. it pulls four-directional street view imagery, runs it through a segmentation model to classify surfaces as pavement, greenery, or other, and combines that with terrain slope, rainfall intensity, and drainage data into a weighted risk score — visualized on an interactive map with AI-generated mitigation recommendations.

React · Vite · Redux Toolkit · Leaflet · Node.js · Express · Python · PyTorch · Mask2Former · OpenCV