My personal projects
I've always been a sucker for project-based learning. With each new programming endeavor, I try to build something more ambitious than the last one!
NAND is a Turing equivalent 16-bit computer made entirely from a clock and NAND gates emulated on the web. NAND features its own CPU, machine code language, assembly language, assembler, virtual machine language, virtual machine translator, programming language, compiler, IDE, and user interface. NAND is based on the Jack-VM-Hack platform specified in the Nand to Tetris course and its associated book.
GitHub repository (500+ stars, 50,000+ views)
Hacker News post (400+ points, reached #1 on the front page)
Write-up
TimeWeb is a time management application that visualizes, quantifies, and prioritizes your daily school or work assignments. Unlike typical planners, TimeWeb splits up and graphs all of your work until they are due. Every day, know what to do, when to do it, and how long it will take.
TimeWeb was primarily a high school project; I even gave a couple school presentations on it. Although TimeWeb is easily the project I’ve put the most effort into, I lost faith in its idea and have yet to officially launch or promote it.
This GitHub repository has 100,000 contributors, a parody of “everything” from npm. It utilizes the GitHub GraphQL API to scrape for GitHub users and add them as contributors to the repo.
I’m a huge fan of both computer science and secret messages. If that’s your cup of tea, I challenge you to decipher this secret message in under 30 guesses and test your general knowledge of computing.
A weekend project I made for Purdue’s Hello World 2023 hackathon with my collegiate (and now my best) friends. It uses ChatGPT to summarize GitHub profiles in a bullet-point format to help users write their resumes.
Placed 3rd out of 150 participants.
My solutions for all 25 days of Advent of Code 2023 to familiarize myself with Rust. I had wanted to completely finish a year of Advent of Code for a long time, so this was a huge personal accomplishment for me :)
Can’t forget! My personal website itself has taken a nontrivial amount of time to write, design, and maintain. I’m super satisfied of what I have so far.
My side projects
These are smaller side projects that I've worked on in my spare free time.
A collection of my personal JavaScript tooling utilities for use within Chrome DevTools, loaded automatically with its own Chrome extension. Primarily used for my CTF competitions and day to day scripting shenanigans.
strictequality-js is a spec-compliant implementation of the strict equality operator in JavaScript (===) from scratch. It utilizes the Chrome Debugging Protocol and the heap profiler for object equality, and currently only works on Chromium version v103.
chrome-secret-js is an extension that provides true private state within Chrome without the use of networking or cryptography, as defined per the linked blog.
scopeinspect-js is a Chrome extension that utilizes the Chrome DevTools Protocol to programmatically inspect internal JavaScript state that would otherwise be inaccessible, such as WeakSet entries, private class properties, and closure variables. It serves as an archaic answer to this forum post.
A small game I made in 6th grade with inspiration from a Pygame Udemy course I took.
A small game I made for a hackathon in 9th grade.