portfolio

These are some things I’ve done over the years. Keep in mind I’ve done a lot more than’s listed here - some projects I’ve done over the years are still a secret, but I’d love to write about them someday.

I spend most of my time on the Internet tinkering with software. I’ve worked with multiple programming languages (with TypeScript, C#, and Rust being my favorites). I believe in learning by doing, and I’m always ready to throw myself at a new problem to tackle, looking for new things to learn and new projects to build. I’m working on things almost every day as a hobby, building new projects whenever I feel like it.

I’ve made a countless number of projects across all kinds of categories - command line tools and scripts, application/game modding and reverse engineering, static and dynamic websites and APIs, and full stack programs handling hundreds of concurrent users. I’m proficient in server administration (with experience in Proxmox, Nix, and Docker), and I run servers at home as well as in the cloud.

I’m an extremely curious person, and I love learning about the software and games I interact with daily. I’m often poking around in software and game internals, and it’s a running gag for me to decompile things before I even open them for the first time. You can find things I’ve done in various modding communities (FINAL FANTASY XIV, Discord, Bomb Rush Cyberfunk, WEBFISHING, Rabbit and Steel, Minecraft, and more).

My proudest projects

moonlight

dateDecember 2023-present
tagstypescript, discord
linkWebsite

A Discord client mod I developed with my friends Cynosphere, adryd, and redstonekasi. moonlight is one of the longest actively-maintained projects I’ve worked on, and I use it daily.

I wrote most of the core logic, installer, CI, extension templates, libraries, and documentation.

Slop Crew

dateAugust 2023
tagsc#, unity, networking, brc
linkWebsite, GitHub

A multiplayer mod for Bomb Rush Cyberfunk with over 90,000+ downloads. The server and client plugin is written in C#, and the website is written in TypeScript using React. Members of our community made community seasonal events that connected to Slop Crew. At its peak, the server handled 100 concurrent players in the same area.

On top of developing the project, I also moderated the Discord server with over 3,000 members at its peak. I no longer actively maintain Slop Crew, and to my knowledge the community has moved on to other hosted servers and brand new multiplayer mods.

GDWeave

dateOctober 2024
tagsc#, godot
linkGitHub

I made a mod loader for Godot games, specifically for the game WEBFISHING. What started as a single set of patches for the game evolved into a full mod loader with several community mods. I no longer actively update GDWeave, but it still works fine.

For the WEBFISHING community, I wrote the mod loader, made some of my own mods with my girlfriend, wrote a save editor, helped make a Thunderstore page, and added support into r2modman.

GDWeave was made as a response to the lack of runtime hooking in Godot games. It currently targets one bytecode version, but could be extended for multiple engine versions. Support for Godot 4 would require a complete rewrite, as Godot 4 stores scripts in plaintext.

Alpha

dateApril 2023-present
tagsc#, ffxiv
linkGitHub

Alpha is a GUI program for FINAL FANTASY XIV modding, datamining, and reverse engineering. It is designed to replace Godbert and FFXIV Explorer in my workflow. Alpha is recommended by XIVAPI and used actively by plugin developers and other modders.

In November 2024, I finished a rewrite of Alpha that took almost a year to complete. In March 2025, I added several new features and added support for EXDSchema.

eightyeightthirtyone

dateDecember 2023
tagstypescript, rust, react
linkWebsite, GitHub

A distributed web scraper crawling the Internet for 88x31 badges, built with a few friends. I started the project and wrote most of the code. There are three components: a website rendering a force directed graph, a scraper that fetches websites and parses their HTML, and a server that manages the scrapers with a Redis database and exports a graph for the website.

The scrapers are slow and buggy and the database is a little messy, but it still runs fine to this day! As of writing, it’s indexed over 33,000 pages. I manually update the website every few weeks when I feel like it.

SPRXPatcher

dateAugust 2024
tagsc#, playstation
linkGitHub

A modern PlayStation 3 ELF patcher to load SPRX files. I made this after frustration at the existing tools that do similar things in the PlayStation 3 modding scene. Writing about this again would do it a disservice, so I suggest you read the README on the GitHub page and the matching blog post to learn more.

Temporal Stasis

dateMarch 2024
tagsc#, networking, ffxiv
linkGitHub

A network proxy library for FINAL FANTASY XIV. This proxy works fully on a vanilla client, intercepting and recreating packets on the fly. I’d suggest reading the README to learn more about it, as I go into detail there.

In April 2025, I rewrote Temporal Stasis with better performance and an easier API.

Full list

This is sorted chronologically. Newer (and arguably more impressive) stuff appears first, but I’m often maintaining old projects in the list anyways.

AlphaWeb

dateApril 2025
tagstypescript, c#, ffxiv
linkGitHub

An experiment in running Lumina fully locally in the browser with WebAssembly. I spent about two days on and off troubleshooting weird build systems, and coming up with creative solutions to get the library to behave how I wanted it to without having to fork anything.

daydream

dateDecember 2024
tagstypescript
linkGitHub

I made a client mod for the Beeper desktop app. Because the app uses ESM and not Webpack, I had to abandon my previous patching knowledge to patch the JavaScript using my own techniques.

nitesky

dateNovember 2024
tagstypescript
linkGitHub

Carrying off of the knowledge of moonlight and webpackTools, I made a client mod for the Bluesky web app. It functions off of runtime Webpack patching.

Statisfactory

dateSeptember 2024
tagsc++, javascript
linkGitHub

A mod for Satisfactory that adds HTTP API stats to the game. This uses the newly added HTTP API to register custom endpoints, along with a scraper node that forwards that data to Prometheus, and then finally a Grafana server showing the metrics.

To make this mod, I had to enter and learn about the Satisfactory modding community.

ImSky

dateSeptember 2024
tagsc#, bluesky
linkGitHub

A Bluesky client made with Dear ImGui. This is one of the first ImGui-based UIs I have designed that behaves less like a set of debug windows and more like a functioning app. It is written in C#.

RNSReloaded

dateMay 2024
tagsc#
linkGitHub

A set of mods for Rabbit and Steel with Reloaded II. It is a port of the old C++ projects RNSModding and Bouny. I wrote a library for interacting with GameMaker, as well as scripts for analyzing the game in IDA and Ghidra.

While in the process of making this, I found two issues in various Reloaded codebases and upstreamed fixes for them.

benchtweaks

dateApril 2024
tagsrust, ffxiv
linkGitHub

A DLL injected into the FINAL FANTASY XIV: Dawntrail benchmark that adjusts various things. I made it primarily because nobody else was looking into modding the benchmark.

Ketamine Keep

dateFebruary 2024
tagsrust, python, c#, minecraft
linkGitHub

A set of tools I wrote to convert an old Minecraft world into a playable Half-Life 1 deathmatch map for my girlfriend’s birthday. It parses Litematica schematics and outputs a .vmf to be compiled. It required a lot of manual touchups later, but the majority of the world was automatically exported and optimized. While the code is very special cased and not ready for anyone else to use, it is still available on GitHub.

There is a blog post available about how I made this here.

htmlua

dateJanuary 2024
tagslua, web
linkGitHub

A small set of functions to convert Lua tables into HTML. It functions by having component functions return strings and collapsing tables of strings into a single string to return to the web server. It’s not perfect (especially with escaping data), but it was a small fun idea that gave me more reason to write Lua.

skindl

dateDecember 2023
tagsrust, brc
linkGitHub

An automatic one-click downloader for custom Bomb Rush Cyberfunk characters from GameBanana. It’s written in Rust using egui and is probably my best example of a small one-file utility. It was also the first project I ever wrote using my split keyboard. In order to make it, I had to learn the (not well documented) GameBanana APIs and handle multi-threaded UI with egui.

goalnet

dateSeptember 2023
tagsrust, c#
linkGitHub

is a wrapper around dll-syringe and netcorehost to allow easy .NET Core DLL injection into a process. It allows you to make a single config file describing your project & process, launch goalnet, and load your code into it.

bottomlesspit

dateSeptember 2023
tagstypescript
linkGitHub

A TODO list manager for Obsidian. I wrote it after being unsatisfied with my friend’s similar project and wanting to make my own. It hooks into your todo list and allows you to configure priority, due date, etc.

scraft

dateJuly 2023
tagsjava, kotlin, minecraft
linkGitHub

I was fascinated by the game Screeps (where the concept is to program bots and automate a world you can’t interact with directly) and wanted to make my own for Minecraft. I teamed up with a friend from Server Scanning Inc to modify Minecraft’s login flow to make a server only inhabited by bots. Authentication works by modifying the hostname you’re using to include an API key. While the project lost interest, it turns out other people continued to play on it.

blockbuild

dateJune 2023
tagsbash, java, minecraft
linkGitHub

blockbuild is a CI/CD system powered by GitHub Actions to automatically build and deploy Minecraft mods. Following my minor participation in decompiling the fractureiser malware, I wanted to find a way to host Minecraft mods built from source that can also be verified that they were not tampered with.

A GitHub Actions workflow calls a shell script which builds plugins and deploys it to GitHub Pages. Pages was picked over Actions artifacts because artifacts require an account to download (and cannot be linked to directly without an external service). The deployed website contains both the raw files and a Maven repository. These mods are checksummed and signed with two PGP keys - one proving the mods came from a build system under my control, and one proving the mods came directly from GitHub Actions.

The chain of trust is based off the fact that the output information can be cross referenced in the workflow logs. Tampering these logs would require either modifying the blockbuild source code (which would be visible), or an attack from GitHub itself. This means as long as you trust the source code of blockbuild/the built mods, you only have to trust GitHub to verify these mods are safe.

Gluestick

dateApril 2023
tagsweb, next.js, typescript
linkSource

Gluestick is a web app that uses Discord and GitHub OAuth to automatically create and manage accounts on NotNet’s LDAP server. It is written entirely in TypeScript using Next.js, and integrates with LLDAP’s API (with Tailscale & Migadu integration planned).

Gluestick was written over the course of a few weeks with Skip. I primarily led the backend code and authentication flow, while Skip designed the frontend.

Xande

dateApril 2023
tagsc#, ffxiv, dalamud
linkGitHub

Xande is a library for FINAL FANTASY XIV plugins that enables model and skeleton imports and exports. I no longer am involved with it, but I wrote most of the (now rewritten) early codebase.

PetoriaGPT

dateMarch 2023
tagspython, machine learning

Me and Luna trained GPT-J with messages from my Discord server. I learned a lot about how PyTorch functions, and more effeciently finetuning language models.

This expanded into the NotNet Machine Learning Laboratory, a server with an RTX 3060 in it specifically designed for making fun stuff.

There’s a blogpost about this here.

Linkpearl

dateMarch 2023
tagsc#, ffxiv, dalamud
linkGitHub

Linkpearl uses the Dalamud plugin API in FINAL FANTASY XIV to have Mumble positional audio in game.

GeezShade & DeezShade

dateFebruary 2023
tagsrust, c#, ffxiv
linkGeezShade, DeezShade

GeezShade and DeezShade were tools to download files for the ReShade fork known as GShade. This ended up spiralling into a petty fight that ended up with GShade implementing malware into its installer to spite me. GeezShade worked by fetching the URLs from the GitHub CDN, and DeezShade worked by using C# reflection to call the installer code. I also made about $200 in donations from my development of these two tools.

There are two blog posts here and here.

hugehugemassive

dateFebruary 2023
tagsrust, sysadmin
linkGitHub, Example usage

hugehugemassive is a Rust library to spin up and down servers using the Hetzner Cloud API. It was inspired by previous adventures with a friend group with a similar script known as “bigbiglarge”, written in Python.

bigcheese

dateJanuary 2023
tagsjavascript, node.js, python, ffxiv, discord
linkGitHub

The Big Cheese is a Discord bot for FINAL FANTASY XIV reverse engineers. It is connected to a Ghidra instance and has commands for decompiling functions without needing to open a decompiler. The bot is written in Node.js and shells out to Ghidra to run headless scripts.

plogon.dev

dateJanuary 2023
tagsweb, javascript, node.js
linkWebsite, GitHub

An interactive website for when FINAL FANTASY XIV is under maintenance. It features lo-fi music with animated backgrounds, but the main gimmick is a synchronized “horse button” that displays emojis on every client’s screen.

It was written in vanilla HTML with a Node.js backend. At its peak, it sustained over 1000 WebSocket connections at once on a home server.

rockstar

dateDecember 2022
tagsrust, lua
linkGitHub

rockstar is a lua script evaluator written in Rust meant to provide helpful APIs for script automation, similar to Hammerspoon for macOS.

ftpfantasy

dateDecember 2022
tagsrust, ffxiv
linkGitHub

ftpfantasy is an FTP server written in Rust that provides access to the FINAL FANTASY XIV client filesystem. It uses the libunftp, vfs, and ironworks crates, along with ResLogger2, in order to build the filesystem.

loremipsum

dateOctober 2022
tagsrust, minecraft
linkGitHub

loremipsum is a distributed system for finding and monitoring Minecraft servers. It takes in a list of IP addresses and periodically scans them.

loggy

dateAugust 2022
tagsweb, javascript, react, ffxiv
linkWebsite, GitHub

A log viewer for people providing support in the XIVLauncher & Dalamud Discord server. It parses zip files clientside and displays troubleshooting info extracted from log lines.

ReSanctuary

dateAugust 2022
tagsc#, ffxiv, dalamud
linkGitHub

After the release of Island Sanctuary in FINAL FANTASY XIV, I built a Dalamud plugin to improve the user experience. It contains multiple features like showing where to gather items, a to-do list, showing the required items to craft materials, all without having to open more UI windows. Because it uses ImGui, you can drag it off screen if you have multiple monitors.

packy

dateAugust 2022
tagsjava, minecraft
linkGitHub, Modrinth

Packy is a Minecraft mod that I submitted for ModFest: Singularity. It lets you store items in your ender chest through a backpack.

tistow

dateJuly 2022
tagsrust, windows
linkGitHub

tistow is a PowerToys Run/macos Spotlight/Alfred/Wox/ueli clone written in Rust, because I was unhappy with the options I had on Windows. It uses egui for the UI.

Plogon

dateJune 2022
tagsc#, docker, ffxiv, dalamud
linkGitHub

I helped build Plogon, the CI/CD system for Dalamud plugins. Mainly, I helped figure out GitHub Actions.

It powers all main repository plugins for Dalamud, providing plugins to a userbase of over 100,000 people (count sourced from Discord server as of May 2024).

Parachute

dateDecember 2021
tagsjava, minecraft
linkGitHub, Modrinth

Parachute is a quality of life Minecraft mod full of small client tweaks. After starting development in 2021, we rewrote and open sourced it in December, and worked on it throughout 2022.