Full stack engineer. Mostly front end. I spend a lot of time designing and documenting things.
dealbot. A Discord bot for looking up PC game deals via IsThereAnyDeal.
22eslint-plugin-suitescript. ESLint plugin for NetSuite's SuiteScript v1/2 API.
20TD-OBSWebSocket. A packaged TouchDesigner component that connects to an OBS WebSocket server to send requests and receive events.
7winctx-rs. A Rust library for managing Windows context menu entries.
4spotify-playlist-sync. Sync Spotify playlists to other accounts without publicly sharing or saving.
3react-hooks-object-state. React hook for partially updating state objects within functional components.
3specimen-cleaning. RuneLite plugin for tracking specimen cleaning activity in Varrock Museum.
3super-snake. A recreation of the classic Snake arcade game. Change gameplay difficulty with options for speed, boundaries, obstacles, and board size.
2twitch-chat-previews. A simple previewer for emotes and badges in Twitch chat.
1quickstats. A simple tool for finding basic statistical sample data from dynamic input.
1TD-Packager. A packaged TouchDesigner component that simplifies the process of properly packaging a .tox file for external use.
1relic-tracker. A Discord bot built for the official Phantom Abyss server that tracks missing relics per member and notifies them if one of their missing relics is found.
1