Data Visualization Lab
Experiments in seeing data clearly.
Working sketches and one-off explorations. Each one starts with a question and ends as a visual you can interact with.
3D
Drone Head
Your face as a thousand points of light
A drone light show built from one webcam frame. MediaPipe reads 478 face landmarks, densified to 1000 points, and three.js renders them as lights that assemble into your face then drift, twinkle, and rotate.
Open lab →
3D
Talking Head
A thousand lights that talk back
Type a topic and a generic glowing face speaks an LLM-written line, with the mouth lights shaping to the words as your browser reads them aloud. Built from the MediaPipe canonical mesh, no camera needed, nothing to download.
Open lab →
Diagrams
LinkedIn Cartography
Visualize your LinkedIn network
As I meet new people I wonder what the crossover is. I wanted to know more than mutual connections but how I knew them and where our networks may have cross paths. I wanted to examine this.
Open lab →
Radar
City DNA
What does your city optimize for?
Every city makes tradeoffs. Some optimize for walkability, others for outdoor access or cultural density. This radar chart plots 20 US cities across 8 dimensions so you can see those tradeoffs at a glance.
Open lab →
Security
OpenSentry
Security advisories for distributed teams
Public threat data and an AI summarization layer turned into security advisories built for distributed teams. The premise is that a small team across multiple timezones can't read every threat feed, but they can read one prioritized brief. OpenSentry is that brief.
Open in new tab →
Generative
Lightwall
A wall of light that breathes
Twenty-five thousand stationary hex lights on a black field. Nothing moves except brightness, sweeping across the wall like wind, colored by a slow-drifting hue field. A live bench with ten sliders sits behind the C key. Inspired by the Target Field wind veil.
Open lab →
Space
Light Echo
How far a life's last light has traveled
Enter a date and watch the radiant energy of that moment expand outward at the speed of light, sweeping past the planets, both Voyagers, the Oort cloud, and the nearest stars until it reaches where it is now. One light-year for every year. Inspired by an idea from Neil deGrasse Tyson.
Open lab →
Space
Rest in Space
Every spacecraft we've launched and where it ended up
An animated isometric timeline of the full fleet — crashed into planets, drifting dead in solar orbit, still leaving the solar system — plus the unbroken thread of human presence since November 2000. Scrub 1957 to now.
Open lab →
Maps
Rendezvous
Find a fair place to meet in the middle
Two people, two starting points, one map. Drop pins or search areas, pick coffee shop or restaurant and when it has to be open, and get a ranked list of spots in the middle zone scored on balanced travel time for both of you.
Open lab →
AI
Shoebox
A full ecommerce prototype built in an afternoon
Built for a client demo to show how AI compresses the gap between concept and clickable experience. Product browsing, cart, checkout, and user profiles — generated entirely in Figma Make, then ported to Vite and self-hosted here.
Open lab →