Projects
Bird ID Training Tool
This is a tool that helps you learn to identify birds based on their song and what they look like.
It interfaces with the iNaturalist API to provide endless practice examples for any bird on the planet,
and automatically links to resources explaining how to identify them. There is also a cool search feature
for finding out which birds are commonly observed in your area, and letting you practice those.
This project helped me learn the basics of Figma, which I used to design the user interface (UI) for this app.
It is my first mobile-first UI design, and first time I put significant effort into the UI of a website.
Take a Look >
Wildflower ID Training Tool
This is a tool I created to help me learn to identify wildflower families.
It repeatedly shows you images of wildflowers in my home area pulled from iNaturalist
and you have to guess the wildflower family.
Take a Look >
PMAPS
This is an app for Project WILD, a backpacking / outdoor activity preorientation program at Duke
University. It lets staffers annotate and categorize locations on a trail map. These annotations can
then be viewed by others, a fantastic way of sharing knowledge about an area. The app existed since
2014, but it stopped functioning around 2016. I became in charge of getting the project back up and
running in Fall 2022, and in addition to doing so, improved the design a bit and added several new
features (commenting, a legend, etc). Working on this gave me a lot of experience with the Google
Maps API and Google Firebase's Realtime Database, which the project is built upon. It also gave me
an appreciation for how cloud platforms can make creating genuinely useful apps much
easier.
Note: No link for this one since the app is intended for Project WILD use only.
Photo Gallery
An interactive photo gallery layout I created from scratch to display some of my most artistic
photos. This project helped me learn a lot about HTML flexbox, CSS variables, CSS animations/transitions, and touch events.
You can see the gallery at the link below or by navigating to the website's "Photography" tab.
Take a Look >
Pig Latin
Some JavaScript code I wrote that will translate any website into pig latin. This is one of my
favorite projects.
Take a Look >
Interactive Graph Editor
This is a program I created when studying mathematical graphs in high school. It allows
you to input a graph and move around the vertices, a useful tool for identifying if two
graphs are the same. It also automatically generates the adjacency matrix of the graph,
which can be copied and used by other programs to analyze the graph. This is a much quicker
method of inputting graphs into a computer than creating the adjacency matrix by hand.
Take a Look >
Catch the Snitch
A Harry-Potter inspired program where you have one goal - click on the flying snitch to catch it.
The snitch stops moving once you've caught it. Sounds easy, right? Go on then, give it a try...
Take a Look >
Shadows
A fun little program where you create polygons and then can move a light source
around to cast shadows.
Take a Look >
Frustration
This program came out a simple question - "How frustrating could I make a user interface
to use?" Try it out and see if you can keep your temper.
Take a Look >
Tank Trouble Remake
This is a remake of the popular online game Tank Trouble, that I did as a personal
challenge. Conveniently, it also means I can play the game with my friends without ads
or weird cookies.
Take a Look >
Mastermind
The famous board game Mastermind! Now you can play it solo.
Take a Look >
Isometric 3D Rendering from Scratch
This is an attempt to render a rotating cube completely from scratch (just JavaScript and an HTML
Canvas). I learned a lot about graphics and rendering through this project.
Puzzle Cube Solver
In an engineering class we created 3x3x3 puzzle cubes where you had to fit together several
pieces to form the complete cube. I wanted to see if my cube had a unique solution, so I wrote
a program that could solve the cube and output all possible solutions.
Three.js Experiment
This was a test I created in preparation for working on a multiplayer fencing
game (which I'm no longer working on).
Take a Look >
Dodge Game
A simple game a friend and I made in an hour-long coding challenge. You move your mouse to dodge the
moving red boxes.
Take a Look >
Maze Player
A maze solver program, where you try to find your way through one of several mazes with limited
vision. Good luck!
Take a Look >