Find your words!

Looking for anagrams of zebra? How about words you can write using only the letters ABCDEFG? Wordlisted is an online tool where you can upload your own wordlist (or just use the dictionary) and search it for words with interesting characteristics. Optimized for crossword creators, puzzle solvers, and word enthusiasts alike, Wordlisted has a wide variety of search options to suit all sorts of wordplay needs. I created the web app using JavaScript, React, and SCSS. Try it out!

Full Moon Albums

All bangers, no skips.

I listen to a lot of music. Since 2020, I’ve been logging every album I’ve listened to and rating each one with a moon emoji. Full Moon Albums documents the albums that are out of this world. I made the site in TypeScript with React and SCSS, along with some Python preprocessing that uses the Spotify API to fetch the cover art and Spotify link for each album. I used Framer Motion for animations, and I built the project with Vite. Explore the list, and discover some bangers!


Create your own Whisper images

An online meme generator that creates images in the style of the app Whisper! Choose your own text, upload your own images, and customize parameters like font, color, and text alignment. I created the webapp in React and TypeScript, generating the images using the html2canvas library. Studies show that everything is somehow funnier as a Whisper image, so give it a go!

New Year Zone

It's 12 o'clock somewhere!

Why celebrate the New Year just once when you can celebrate it 38 times? New Year Zone is a site I made with my dad that counts down to the New Year in every time zone, so you can share the fun with the whole world! I developed the site in TypeScript and React, with SCSS for styling and Framer Motion for animation. The project is built with Vite and hosted with Cloudflare Pages. Join the celebration, and get in the zone—the New Year Zone!


Forging crosswords, word by word.

An open-source sandbox for crossword filling algorithms. Swordsmith is the result of over a year of research and exploration in crossword filling, which turned out to be a rabbit hole of constraint programming, heuristics, and backtracking algorithms. I created it in Python with the help of some of my friends at school, and now it’s in the hands of the greater crossword community. Check it out on GitHub, and forge yourself some grids!


Asking the real questions!

Is it bigger than a breadbox? Breadbox is an online realtime multiplayer Twenty Questions game I created with my roommate Cale Wolf. We built the game’s frontend using React and SCSS, and we made the backend realtime database using Firebase. We created Breadbox over the span of one weekend for HackIllinois 2021, where it placed 2nd overall!


The ultimate snake game

A souped-up snake web game I developed entirely in HTML, CSS, and pure JavaScript. It tracks the user’s high score and stats, features a shop where the user can spend the fruits they’ve accumulated, and offers three speed levels for the user to unlock. The logo and sprites are all original artwork. Snaclops is dangerously addictive and free to play online!

Air Hockey

Man vs. machine

An eerily realistic single-player air hockey simulator in your browser! The game runs entirely in an HTML5 canvas with pure JavaScript. It was my first foray into creating an intelligent “computer player” that acts similarly to a real human. While it may not pass the air hockey Turing test, it feels pretty natural and it’s certainly fun to play against. Try it out online for free!

Penguin Time

Would you look at the clock?

A classic platformer game I built in C++ and openFrameworks. It follows an estranged penguin’s journey to escape the desert. With 10 levels of increasing difficulty, a physics system built from scratch, and fully original sprites and animations, Penguin Time was an absolute blast to create. The game requires openFrameworks to download and play, but its code is open source on GitHub.


So meta, right?

I developed this website using HTML, CSS, JavaScript, and the fantastic static site framework Jekyll. It’s hosted on GitHub Pages, and all the source code is available on GitHub.