My Projects

Browse some of my past work, both for clients and for fun

Patheway Ministries

I helped out Jeff by creating a Wordpress website for his non-profit organization that offers coaching and interim pastor services. I helped work on his logo and find many stock photos for the site. 


  • Appointment booking service
  • Image carousel
  • Testimonials page with images and quotes
  • PayPal link
  • Stock photos
  • Custom colors, layout, and logo


Fly High! ESL

I created a brand new site for Debbie Cassels' tutoring service using Wix. I helped customize her logo and we talked over Zoom about the specifics that she requested for her site, some of which are listed below.


  • Appointment booking service
  • Stock photos
  • Customized logo
  • Email collection form
  • Custom colors and design


Karlabickel Stories

Joel Klein was helped by converting his site from using mustache.JS to a more manageable PHP site, which programmatically extracts JSON data about stories with summaries, audio, and text representations. Optimized for a 50% page load speedup and updated old, deprecated HTML.


  • Converted Mustache.JS code into PHP
  • Data management (JSON)
  • Search Engine Optimization (SEO)
  • Updated deprecated HTML
  • Mobile viewport support


Links to live sites omitted for client discretion.

Sugar & Slice

I worked in a team of fourteen members to create a game using Unity for an RSO (club) called GameBuildlers (a subset of ACM@UIUC). We use Scrumban project management via Trello and followed Confluence documentation in coordination with design sub team. We had weekly meetings to update each other of progress and plan future work.
This game is a case study of the video game Hades by Supergiant Games. It is a top-down roguelike hack-and-slash game.

Technologies used

  • Unity
  • C#
  • Photoshop
Open download page

Writing on the Wall

This project is a Pokemon Go crossed with social media game. You can walk around and discover notes and chests on a map and leave notes for other players to find with different charms that change how the note looks. It was a very extensive project with a robust backend, and it took a year of development to release the beta version.

Technologies used

  • Node.js
  • Sequelize
  • Express/EJS
  • React
  • Digital Ocean
Visit site


This is a fun game I made in Node.js that is a competitive, multiplayer game. It is kind of like Cookie Clickers mashed with Kahoot, if you've heard of those. Multiple people join with a game code and can attack each other, trying to win the most money.

Technologies used

  • Node.js
  • Express
  • PostgresSQL
  • Websockets
Visit site

Risk Simulator

This is a small Javascript project I worked on that uses data visualization and empirical analysis to determine the odds of winning from throwing random dice in the game of Risk. The theoretical analysis is more diffult because in Risk, attackers have three dice, but ties win for the defending side which only has two dice.

Technologies used

  • Javascript
  • Chart.js
Run simulatorSee more details

GroupMe bot: Reminder Bot

I created a reminder bot that will send a daily reminder to your GroupMe group. You can configure it by saying things like "Hey Reminder Bot, set the reminder to Our meeting is Tonight!" or "Rbot, set the reminder time to 6pm on Tuesdays and Thursdays." I open-sourced the code for anyone to customize, and I also created a specific instance for my running team that reminds them to fill out their running log, as well as giving inspirational quotes, funny jokes, and quotes from our coach (and quotes can be added to the database via a command in GroupMe).

Technologies used

  • Webhooks
  • GroupMe API
  • PostgresSQL
  • Node.JS
View repository

The Switch

The Switch is a random thing I built that tests various technologies to form a virtual switch that you can switch on from anywhere in the world, and it will update on everyone else's devices simultaneously. For instance, you can flip The Switch on your phone and see it update real-time on your computer.

Technologies used

  • Vanilla PHP
  • mySQL
  • AJAX
  • Session cookies

Small JS Projects: Balls Bounce and MadLibber

These are two small Javascript projects I made. One is a basic physics simulator with balls and the other is a word game that makes stories out of words you put in.

Technologies used

  • Javascript
  • Canvas API
  • URL Query
  • LocalStorage
View balls bounceView MadLibber

Arduino project: Cat feeder

An Arduino is a small programmable microcontroller. I used a microcontroller similar to an Arduino that has wifi to create an automatic cat feeder. When plugged in, the sketch connects to wifi and posts to a database that it is online. It then gets the real time from an API I used and calculates when the cat will need to be fed next. Then, it waits until it is the time of day to feed the cat, and it dispenses a measured amount of food through an auger and then posts success to the database.

Technologies used

  • ESP8266 microcontroller
  • ESP8266 WiFi
  • Transistor as relay
  • PostgresSQL
  • API with POST/GET and query security