Projects
Side projects, research explorations, and open-source work.
Tools
14 projects Things I built to connect my life or answer questionsGlare Off
Take the glare off glasses in your photos. Drop in a picture, download it with clear lenses, and every pixel outside the glare stays exactly as it was. Runs in your browser, nothing uploaded. Free.
Mineru
A local-first personal AI assistant that lives on your Mac. It reads your mail, calendar, and texts, remembers what you tell it, and sends you briefs on a schedule. The engine is open source; your life stays in a folder you own.
Check Transcriber
Paste one phone photo of a pile of checks and get each one found, straightened, and read into rows ready for a spreadsheet. Built for a small nonprofit's rent checks, and the photo never leaves your browser.
Roblox Studio CLI
Drive the Roblox Studio you already have open from a shell: run Luau, capture the viewport, inspect state. It talks to Studio's built-in MCP server, so agents get every tool Studio ships with nothing to install.
Claude Landline
A phone line to the Claude Code agent on your Mac. Text it over Telegram from the train, send voice notes and PDFs, and the reply streams back from the same always-on session.
Claude Reads the News
Every morning Claude reads fifteen news feeds and writes a short, honest reaction to whatever caught its attention, with every article it read listed below. It has posted daily since April 2026.
Please Remain Seated
Why getting off a plane takes forever: race exit orders, then rank every airline's real 2026 boarding procedure.

Grid Atlas
Where does your electricity come from? Type your ZIP and meet your grid — fuel mix, CO₂ per kWh, prices, and 25 years of change, drawn from public EPA and EIA data.

EV Atlas
How fast is the world going electric? EV adoption across every US state and country, the battery-price crash that made it possible, and 200 years of electric-car history — built on IEA, US DOE, and BloombergNEF data. A sibling to Grid Atlas.
After the Decimal
Why does every AI lab ship a .5, and why does nobody ship a .9? A visual survey of 109 flagship LLM releases from 14 labs, 2018–2026, tracing what the digit after the dot really signals.
Monarch Money CLI
A full-featured CLI for Monarch Money. Query accounts, transactions, budgets, and cashflow from the terminal — JSON output for AI agents, clean tables for humans.

Real-time travel in the bay
The Bay Area redrawn so distance means travel time. Drag a slider and watch two-mile bridge crossings stretch wide while freeway miles shrink, all routed over the real OpenStreetMap street network.
Birds-Fly View
Type any Bay Area address and take off as a bird — real streets, real building heights, real terrain, rendered as a golden-hour dreamworld from live OpenStreetMap data.
Coop View
The family backyard rendered live in 3D: real satellite ground, our two hens Pidgey and HeiHei wandering the lawn, and a sky that tracks the actual sun, moon, and stars. Password-gated to keep the location private, so bring the passphrase.
Learning
10 projects Interactive sites that teach ideas intuitivelyPacket Run
You're a message trying to get home. Shatter into five packets and cross storms, oceans, and jammed cities using real networking moves. A roguelite for ages 9 to 12 where losing a fragment teaches retransmission.
Hole Foods
You are a hole, and everything is food. Swallow berries, cakes, cars, then whole city blocks — the further you roam through an endless emoji world, the bigger everything gets, forever.
From Attention to Agents
The story of modern AI as one arc — from the 2017 Transformer to today's reasoning agents. Eight chapters of interactive demos: self-attention, scaling laws, RLHF, test-time compute, and the agent loop.

Valence
Chemistry from first principles. Rotate real electron orbitals in 3D, watch energy levels cross to explain the periodic table's shape, and build molecules with live octet checking.
Solidified Sky
A tree is made of air. Fly down into a living chloroplast and travel through photosynthesis while it runs - water splitting into the oxygen you breathe, a single carbon riding from air into sugar. Every molecule drawn and animated in code.

Graph Playground
Animation-first intuition for function transformations: why subtracting 3 from x slides a graph right, why a minus sign flips it. Color-coded knobs, a copycat race, and boss levels.

Follow the Drop
Be a drop of water. A choose-your-own-path adventure through the water cycle for young explorers — evaporate from the ocean, ride a cloud, fall as rain, keep a travel journal.

Diffusion From Scratch
An 11-module curriculum building the full pipeline behind Stable Diffusion and DALL·E 3 in PyTorch — from noise schedules and U-Nets through latent diffusion, DiT, and flow matching.
CS224R: Deep Reinforcement Learning
Open-source study companion for Stanford's CS224R. Eighteen detailed lecture notes spanning imitation learning, policy gradients, offline RL, RLHF, and sim-to-real robotics — the deep-learning sequel to CS234.

CS234: Reinforcement Learning
Open-source study companion for Stanford's CS234. Fourteen detailed lecture notes covering MDPs, Q-learning, policy gradients, imitation learning, and exploration — with rendered math.
Research
2 projects Published & academic workGenHMC: Synthetic Avatars
A diffusion-based pipeline for generating synthetic head-mounted-camera datasets, powering downstream codec-avatar models. Published at SIGGRAPH Asia 2025.
Diamondback: Person Segmentation
A semantic segmentation model for human-body segmentation (CS 191 senior project). Dense convolutional connections with a DenseNet-161 encoder for high-resolution masks on MS COCO.