MochBot
A bot people train against. Luke and I have been building it for two years — engine in Rust and C++, dashboard and match plumbing in TypeScript.
Rust · C++ · TypeScript Live ↗29 things worth keeping, grouped by what they are rather than when I made them. Some are closed for now; a few of those will open up. Where there’s no link, there’s no public source yet.
A bot people train against. Luke and I have been building it for two years — engine in Rust and C++, dashboard and match plumbing in TypeScript.
Rust · C++ · TypeScript Live ↗A search engine for tetromino stackers. Rust, three rewrites, each one faster than the last.
Rust Source ↗Replay-coaching engine — move generation, search, evaluation, and the pipeline that trains it.
Rust Source ↗A timing model that makes a bot's keystrokes look like a person's. Trained on real replays.
TypeScript · Rust PrivateReplay viewer with opener detection. Simulates the game to tell you what you actually played.
SvelteKit · PIXI · WASM PrivateI reverse-engineered the TETR.IO protocol and wrote a headless client for it. It's the only open-source one, and most third-party tooling for the game is built on it.
TypeScript Live ↗ Source ↗JWT authentication across subdomains, small enough to read in one sitting.
TypeScript Source ↗Virtual joystick for browser games. Written years ago; people still install it.
JavaScript Source ↗Rust on a VEX V5 brain. My own motion library, Monte Carlo localization for working out where the robot actually is, and a Svelte debugger that reads telemetry off it over a protocol I wrote down.
Rust · vexide Source ↗Scouting app for VEX competitions — match and award notifications, video capture, live standings.
React Native · Supabase Source ↗What I worked out about robot localization, written down so other teams didn't have to.
Documentation Source ↗GIF decoder for the VEX PROS runtime, with transparency. For putting animations on a robot screen.
C++ Source ↗Bezier path planner for VEX autonomous routines.
TypeScript Source ↗UIUC publishes its dining menus with unreliable allergen data. I scraped the system it's generated from and built a better app that you can trust when your life is at stake.
SvelteKit · Docker Live ↗ Source ↗A replacement front end for the Aspen student information system, built on a reverse-engineered API.
SvelteKit · MongoDB PrivateWatches UIUC course sections and pushes a notification the second a seat opens.
SvelteKit · Web Push PrivateTutoring management for a local nonprofit — scheduling and service-hour reporting.
Next.js · MongoDB PrivateAn OpenID Connect provider. Every service below signs in through it.
SvelteKit · SQLite Live ↗Personal file host with Drive-backed storage.
SvelteKit · Docker Live ↗URL shortener.
SvelteKit · SQLite Live ↗Share a credential once, then it's gone.
SvelteKit PrivateChrome extension that gives each Canvas course its own favicon, so the tabs stop being identical.
TypeScript Live ↗Plugin-based JavaScript deobfuscator.
JavaScript Source ↗macOS menu-bar firewall — per-app network filtering through a system extension.
Swift PrivateSystem-wide microphone mute in the menu bar.
Swift PrivateMirrors app unread badges into the macOS menu bar.
Swift PrivateSmall browser games, fully offline after first load.
SvelteKit Live ↗Bulk image viewer, scoreboard, counter. Things I needed once.
SvelteKit Live ↗Userscripts for Art of Problem Solving. 2023.
JavaScript Source ↗Around 180 more repositories exist, most of them from high school and most of them not worth your time. Team projects I contributed to but didn’t write are credited to the people who did.