My Favorites

A screenshot of the activity tracker "Something Good Today"

Another SvelteKit project, this time with Firebase integration for accounts. It's an activity tracker I made mostly for myself, so I could track if I did something I felt good about every day (hence the overly generic name).

More ›
A screenshot of the wacky blog I made, Deru's Book of Made-Up Facts

A blog for my family to post random crazy things to. Made with Sveltekit and Sanity CMS. This is the first project I made with Sveltekit, and also the first thing I made with any sort of back end.

More ›
A screenshot of the my new tab extension, showing a background with some flowers, links to various websites, and weather

I made a Chrome new tab extension because I wanted to be able to put as many links as I wanted on my new tab page. It also has a basic notepad, shows the weather using OpenMeteo and NOAA data, and has Todoist integration (you have to supply your own Todoist API key if you want that to work, though). It's not published as an extension, but I might do so in the future.

More ›
A screenshot of my cube timer, showing some solve times I did.

I made a timer for speedcubing. This was the first project I made with regular Javascript and manipulating the DOM and stuff. I would say it looks boring at best, because I was terrible at CSS at the time. I was also trying to cram way too much stuff on to the screen at once, especially for mobile.

More ›




Timeline

Tauri Video Downloader 


Video downloader source code

A practice project with Tauri. I wrote a different version of this for my personal use and I thought it would be good practice to simplify it and write a blog post about it, so I did.

D&D app 


D&D app source code

An Electron app with SvelteKit and Node.js for playing Dungeons and Dragons. (or a lot of other things). It uses a Node server and websockets to connect to other devices on the same network so you can use them as controllers for the main app.

Pose tracking controller 


Pose tracking controller source code

An Electron app based on MediaPipe Pose that tracks your pose and sends keys or mouse clicks if you make the correct pose. I made this with my little brother specificially to control Minecraft, although it would work for other games as well.

Graph Layout 


Graph Layout Demo

A force-directed graph layout library for visualizing connections or just making a pretty graph, written in pure JS.

Sound classifier 


Sound classifier live demo

A machine learning (ML) model for classifying sounds as happy or sad. It doesn't work extremely well, but considering that I trained it on my laptop with about 100 sounds, I'm pretty happy with its performance. I used PyTorch with torchaudio for training and running the model. I also made a website with the model hosted on Heroku to make it easier to use. Unfortunately, Heroku no longer offers free dynos, and it no longer works because I don't want to pay for a dyno just for this.

Something Good Today 


Something Good Today

Another SvelteKit project, this time with Firebase integration for accounts. It's an activity tracker I made mostly for myself, so I could track if I did something I felt good about every day (hence the overly generic name).

Timeline Generator 


Timeline Generator

This is a quick timeline generator I threw together in a couple of days. You upload a spreadsheet of some sort, select columns, customize colors if you want, and it generates a timeline PNG for you.

This site 


Finally making a personal portfolio/blog website.

Name Generator 


Random name generator

A random name generator I made. It uses the naming language generator from mewo2 for the first names, the middle initial is a random English letter, and the last name is a random English noun from Desi Quintans' "The Great Noun List" with random affixes (none, prefix, suffix, or both) from Wikipedia.

PNG editor 


PNG editor source code

A very simply PNG editor I made with C++. All it can do is rotate in 90 degree increments or mirror the image. I used two different libraries for decoding and encoding the PNGs.

Deru's Book of Made-Up Facts 


Deru's Book of Made-Up Facts

A blog for my family to post random crazy things to. Made with Sveltekit and Sanity CMS. This is the first project I made with Sveltekit, and also the first thing I made with any sort of back end.

First Svelte project - FEH Tracker 


FEH AR Tracker

I made a tracker for the mobile game Fire Emblem Heroes, to keep track of your Aether Raids lift.

Tuner 


Bad tuner

This was a pretty ill-advised project, but I really wanted to see if I could make a chromatic tuner from scratch. The answer is yes, but it's bad (hence the repository name).

New tab extension 


GitHub Repository

I made a Chrome new tab extension because I wanted to be able to put as many links as I wanted on my new tab page. It also has a basic notepad, shows the weather using OpenMeteo and NOAA data, and has Todoist integration (you have to supply your own Todoist API key if you want that to work, though). It's not published as an extension, but I might do so in the future.

Cube Timer 


Cube timer

I made a timer for speedcubing. This was the first project I made with regular Javascript and manipulating the DOM and stuff. I would say it looks boring at best, because I was terrible at CSS at the time. I was also trying to cram way too much stuff on to the screen at once, especially for mobile.

Asterion 


A whistle-controlled robot minotaur I made. It uses two Arduinos (one for the whistle detection and one for motor control). I programmed four different tones for forward, turn right, turn left, and stop.

First project on Khan Academy 


It's a beautiful day

A spin-off of one of the first programming lesson on Khan Academy. (They've since changed the course and this project isn't part of it any more)