Software developer in Rotterdam. I got started writing ReShade shaders and installers for games; these days it's mostly TypeScript, Rust and Python, split between browser automation for LLM agents, small data-driven sites and the tooling around them.
Roshade, the ReShade package for Roblox I built in 2020, has passed ten million downloads in total.
| festiweer | Weather posters for Dutch festivals, each in the festival's own design language. Built from the ECMWF and GFS ensembles with KNMI Harmonie for the last 48 hours, rebuilt every four hours on GitHub Pages. | festiweer.nl |
| dirtyledger | Check a company for ties to the arms trade, war crimes and sanctions. Every hit is literal list membership on a published source (SIPRI, OpenSanctions, UN OHCHR), evidence linked, no invented scores. Fully static: SQLite over HTTP range requests. | dylannoor.github.io/dirtyledger |
| zendriver-mcp | Undetectable browser automation for LLM agents, spoken over MCP. Chrome DevTools Protocol underneath, token-optimised DOM snapshots on top. My fork of Zendriver-MCP, where most of my browser-agent work happens. |
| Roshade | NSIS installer that puts ReShade presets and shaders into Roblox. Archived, still the most-downloaded thing I've made. | |
| ZealShaders | My ReShade FX shaders, including an adaptive rim light that exaggerates exposure around objects for a three-point-lighting look. | |
| Shade The Sims | A ReShade installer tailored for The Sims 4, with a curated set of presets. | |
| FiveM-ReShade | Same idea for FiveM: one installer instead of a forum thread of manual steps. | |
| lut-rs | Batch-apply .cube LUTs to images from the command line, optionally emitting ReShade presets. Rust. |
|
| RoKlein | Declarative, asynchronous UI library for Roblox, written because Roact blocks on large component trees. Lua. | |
| roblox-app-patcher | Disables the Roblox desktop app so the web client opens instead. Rust. |
| vite-plugin-squoosh | Image compression for Vite builds, powered by Squoosh. On npm. | |
| RProxy | A Bun proxy for the Roblox API with a shared key, retries and timeouts. Runs on Vercel Edge or locally. |
| Auto-GPT | Moved text-to-speech off the main thread so the agent keeps working while it talks. Merged. | |
| discord-vscode | Branch where GPT writes your Discord rich-presence status from what you're actually coding. |
Rotterdam, NL · festiweer.nl · dirtyledger