CodePen Experiments

I use CodePen to experiment with new web tech and to create reduced test cases. All of my pens are publicly available.

GitHub Projects

Whenever possible, I host all of my projects publicly on GitHub. I love coding in hackathons so there is no shortage of hastily built, but super fun projects there.

Encounter Builder

Plan your D&D encounters with automatic difficulty calculation using the 5e rules! Search the entire D&D Beyond monster database to craft the perfect encounter for your players. Can you find the hidden easter eggs?

Combat Tracker

Run your planned or ad-hoc encounters with full initiative, turn, round, HP tracking, and quick monster stat lookup!

Twitch Extension

Show off your D&D Beyond characters with this beautiful, scalable stream overlay! With real-time health, condition, and equipment tracking

MTG Deck Builder

Build, plan, share, and test your Magic: The Gathering decks.

Baby Boomer

Can AngularJS be used to create an infinite scroller? Yes. Should it? No. But I did it anyways! Play as a lost baby navigating the infinite aisles of a grocery store, dodging tipped carts and more.


Play as an Armadyne, an armadillo/porcupine hybrid, and race to victory! Use your hardened shell to race at insane speeds, then use your spikes to scale walls! Collect power-ups to disadvantage your opponents and win!


What if you could go grocery shopping without leaving the comfort of your own home? In this 2 day hackathon, my team explored ways to build a VR shopping experience that brings the store shelves to your VR world. While we're in VR, we might as well shop in the forest or on a mountain or in Skyrim.

Physics Engine

I built a physics engine with C++ and DirectX and uploaded some of the more ridiculous demos to YouTube. Like when I used it to build a Newton's cradle, an overly interconnected cube of springs, or even the Solar System.