i like building things. mostly rust and typescript lately, but i'll use whatever gets the job done. here's some of my stuff:
-
skunk.to — encrypted file hosting and pastebin i built and run. aes-256-gcm with argon2, saml 2.0 + oauth2 identity provider, direct crypto payments (btc/eth/ltc/sol) off our own nodes, stripe billing, url shortener, sharex support, admin dashboard. doubles as sso for our other services.
rust, actix-web, sqlite, react, docker -
skunkcord — wrote a discord client from scratch. full api coverage — gateway websocket with reconnect/resume, rate limiting, multi-account, socks5 proxy, slash commands, threads, reactions, all of it. has built-in client mod features like message logging, hidden channels, clearurls.
rust, qt/qml, websocket, http/2 -
matranti — anti-cheat plugin for a minecraft anarchy server. catches item dupe exploits and teleport hacks while still letting people use normal cheats (it's anarchy, after all). async detection on separate threads so it doesn't tank tps.
java, papermc -
patriotweb-rmp — chrome extension i made that puts ratemyprofessor scores right on the gmu class registration page. scrapes prof names, hits the rmp graphql api from a service worker, drops scores inline.
javascript, chrome manifest v3 -
wordle-painter — draw stuff on a wordle board. uses the real wordlist and handles duplicate letter logic correctly. click and drag to paint. live at wordle.danny.ink.
react, typescript, vite -
discord-webhook-proxy — webhook proxy with a queue so you don't get rate limited. dashboard for managing webhook aliases, swagger docs. built it for roblox game servers but works for anything.
typescript, elysia/bun, docker -
gamepigeon-word-bot — solves gamepigeon word hunt automatically. screenshots the phone via appium, finds the board with opencv template matching, reads the letters, dfs to find every valid word, swipes them all in longest first.
node.js, opencv, appium, webdriverio -
discord resolution vulnerability — found a bug in discord's media pipeline where malformed video files made the thumbnail renderer overread memory and leak other people's uploads. reported on hackerone, patched same day. $500 bounty.
-
osrs-playerdetector — runelite plugin that pings you when a new player shows up nearby. checks every game tick, sends a chat message + system notification.
java, runelite api -
discord-plexamp-status — shows my plex music on discord as if it's spotify, with working listen along. polls tautulli and pushes it through the discord gateway.
node.js, discord gateway, tautulli api -
portfolio / danny.ink — my portfolio site and landing page. portfolio has a live "now playing" widget that pulls from plex.
node.js, express, docker




