Stories

Projects, and the stories behind them

Things I've built for fun, all public on GitHub. Some run in production at my house; one plays music in your browser. Below the projects are the parts I'd tell you about over an NA beer.

Project

Basement Theater & Home Automation

  • Python
  • Home Assistant
  • pyscript
  • Docker
  • GitHub Actions

One button picks a mode (movie, game, sports, music), and the house sets the receiver, launches the app, sets the lights and puts matching artwork on a wall dashboard. About 140 tests, run in CI on every commit, because every commit is a deploy.

Project

Good Morning Dashboard

  • Python
  • FastAPI
  • APScheduler
  • Docker
  • pytest

A FastAPI service that says when to leave for the train. It plans SEPTA Regional Rail trips with transfers, tracks live delays, and sends a weekday push with the train home and the next ones that still connect. It keeps following both legs until the connecting train leaves, pushing again only if things get worse.

Project

WeatherTunes

  • JavaScript
  • Tone.js
  • Web Audio
  • Open-Meteo

Turns today's forecast into a short piece of music. Each hour gets two beats: temperature shapes the melody, cloud and rain pick the scale, air pressure picks the key, wind sets the tempo, and the climate picks the instruments. The sky plays too, from moonrise bells to meteor showers. Music-theory rules keep it in tune, and the same place and day always gives the same song, with liner notes explaining why.

Earlier work

School and early-career projects, kept for nostalgia.

C3 Mobile

A native Android app I worked on as an intern and new grad: bug fixes, framework upgrades, data validation and error handling, on a small team using git and Agile.

Slime Arcade

A Unity/C# remake of Slime Volleyball plus slime dodgeball and soccer, built with two classmates. Probably the most fun game I've made. GitHub

RSA Encryption

A Java implementation of RSA using BigInteger that encrypts and decrypts messages. GitHub