Personal Projects

Things I built because I wanted them to exist.

Orthodox Lectionary Visualization

View ↗

An interactive radial calendar of the Orthodox Christian liturgical year. All 365 days arranged in a circular SVG — 52 weekly wedges radiating outward from September, the start of the ecclesiastical year. Colored dots map which Bible books appear in each day's prescribed readings, with toggles to filter by book or category. Handles both Julian and Gregorian calendars.

Built it because I'm Orthodox and wanted this view to exist. No framework, no build step — just vanilla JS, SVG, and a lectionary JSON dataset.

Vanilla JS SVG Data Visualization GitHub Pages

Chore Bingo

View ↗

A real-time multiplayer chore tracker gamified as a bingo board — used daily by two people across devices. Both users see the same board state instantly via Firestore subscriptions; completions and reshuffles propagate live without polling.

The interesting parts: Firestore transactions to prevent double-triggered resets on concurrent logins, DST-safe reset timers anchored to 2 AM Mountain Time using Intl.DateTimeFormat without a backend, a three-tier priority system (pinned → queued → random fill) with a full pool accounting UI, and the whole thing ships as an installable PWA on the Firebase free tier.

React TypeScript Firebase Firestore Vite PWA Tailwind

Asteroids

Currently offline

My take on the classic arcade game — my first ever solo project, built in 2020. Vanilla JS on the front end, Node/Express on the back, with a top-ten leaderboard that only keeps scores that have ever cracked the top ten (so you can watch the floor rise over time).

I wouldn't build it the same way today, which is kind of the point.

Vanilla JS Node Express Firebase
ROKR Globe assembly

ROKR Globe assembly

A crocheted Wooble narwhal

My first crochet project. A Wooble narwhal.

Granny square crochet project

Granny square crochet project

Onion skin dyed Pascha eggs

Onion skin dyed Pascha eggs

Homemade garlic focaccia

Homemade garlic focaccia

Hiking with my kiddo

Hiking with my kiddo

Northern lights over Grand Junction

Northern lights over Grand Junction

Lunch in Vienna

Lunch in Vienna

On a boat in Budapest at night

On the Danube at night. Budapest.

Family at the Outer Banks

Family trip to the Outer Banks

First cross stitch — Jerusalem cross

First cross stitch. A Jerusalem cross.

Annular eclipse — ring of fire

Annular eclipse