My Favorites
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).
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.
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.
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.
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.
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.
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)