Projects

Things I've built, and what they taught me.

I learn things by building them. Some of these were useful, some were just interesting, and a few were neither, but I finished them, and I know how they work now.

Hardware & Electronics


The restored Spartus clock

Spartus Clock Rebuild

A vintage Spartus grandfather clock whose original movement was beyond saving. I rebuilt it around a XIAO ESP32-S3 and a MAX98357A amp running ESPHome. The Westminster chimes are synthesized in Python rather than sampled, and it pulls time over SNTP so it never drifts.

The solar Meshtastic node

Solar Mesh Node

A solar-powered Meshtastic node mounted on my roof, joining the local LoRa mesh. It's long-range, low-power radio that works with no internet and no cell service. I configured remote administration over the mesh itself, so I can manage it without going up there, and added a fixed gateway feeding mesh status into Home Assistant.

A wardriving device in a printed enclosure

ESP32 Odds & Ends

A rotating cast of small ESP32 builds: sensors, voice satellites for my home automation setup, battery-powered devices in enclosures I design and print myself. Most of what I know about power budgeting, LiPo charging, and why a board browns out at exactly the wrong moment came from these.

A voice satellite

Iris, the House Voice Assistant

A voice assistant for the house that answers to "Hey Iris" and never talks to Amazon or Google. Speech recognition and synthesis both run on my own server, so a command spoken in the kitchen stays in the building. Satellites are a mix of bought hardware, ESP32 boards I flashed, and one repurposed Echo Show. The wake word was the hard part: off-the-shelf models fired at the TV constantly, so I trained a custom one.

The homelab rack

The Homelab

A Proxmox host and a storage tower, both built from secondhand and e-waste hardware, running the services I'd otherwise rent from someone else. Segmented VLANs, my own DNS, my own backups. It is never finished and that is entirely the point. Most of what I've learned about networking and Linux came from breaking this and then having to fix it before anyone noticed.

The node laptop

A Monero Node

A full unpruned node on a secondhand laptop, served over Tor so other people can sync from it, plus a deliberately tiny miner on another scavenged machine. It earns effectively nothing, which is the point. Both exist to add a node and a little hash rate to a network I think should have more of both.

Software & Web


Valiant Inquiry

Valiant Inquiry

A space-themed achievement system for my classroom, rebuilt from scratch after the first version barely got used. Students never log in: there's a projector view, a phone remote for me, and an admin console. Crews earn points as a whole class, and an AI writes a daily ship's log using real student names without ever sending one to the API.

Sweet Speech website

Sweet Speech

A site for a private speech therapy practice. Warm and professional was the brief, so it ended up with a watercolor palette and a layout built around what parents actually need to find first. Netlify Forms for contact, no backend to maintain. I also learned to take image optimization seriously on this one, since some of the source photos were several megabytes each.

Bubbles & Fur website

Bubbles & Fur

A site for a home cleaning business, built once and then rebuilt a few months later when I knew more. It has an interactive service-area map, a contact form that pre-fills based on which service you clicked, and PayPal integration for booking. The redesign is the version that's live now. Comparing the two is a decent record of what a year of practice does.

Passingly Informed

Passingly Informed

A daily Indianapolis sports digest for people who don't follow sports but have to talk to people who do. Each item pairs a real result with a question you could actually ask someone. Data comes from ESPN's free endpoints; the LLM handles phrasing only and never touches a fact, because a confidently wrong score is worse than saying nothing.

Net-chan

Net-chan

A Discord bot that collects alerts from everything in my homelab into one place. Before it existed, notices about updates, backups, and failed services arrived by email, text, and three separate apps, which is a good way to notice none of them. She has an attitude about being asked to do things.

Yard Art website

Yard Art

The first site I built without following a walkthrough. I'd ordered a yard sign for my wife's 40th from a local company, noticed their website needed help, and rebuilt it as an unsolicited exercise. They never wrote back, which is fine. Doing it without a tutorial holding my hand was the point.

teachweaver

This Site

Originally a hand-written Bootstrap site where every page carried its own copy of the header, nav, and footer, and every new post meant editing a JSON file by hand. Rebuilt on Eleventy so a post is now just a markdown file. Migrating it turned up a dozen small inconsistencies the old process had quietly introduced, a good argument for letting the build do the repetitive parts.

The original teachweaver site

Earlier Sites

The first version of this site, built by following along with a beginner course, plus the original Bubbles & Fur design before the rework. Leaving them up because pretending the early stuff didn't happen would make the later stuff look easier than it was.

Small Tools & Experiments

Scripts and one-off tools that scratch a specific itch. Dashboards that pull every service in the house onto one page, a self-hosted search engine so my queries aren't someone's product, visualizers built because a pattern looked interesting. Most of them take an evening and save me a small annoyance forever.

Made by Hand


A finished coin ring

Coin Rings

I lost my wedding ring, so I made a new one out of a quarter minted the year we got married. Punch the center, heat it, and hammer it down around a mandrel until the face of the coin folds into the outside of the band. I've got four more quarters from the same year, on the theory that I'll lose this one too.

Bleach-stencil shirt, front

Bleach-Stencil Shirts

Hand-cut stencils and bleach on dark cotton, an ongoing series with a civics theme. It's an unforgiving process: the bleach keeps working after you think you're done, so the design you get is never quite the design you drew. Several finished, a couple more in progress.