I rewrote the Scratch image server in Go
Scratch started in August 2025 as a simple Node.js server, local file system, and a hard coded whitelist of allowed user agents. That was it. A single process answering HTTP requests off a directory of files. It was small, simple and quick. When Scratch started to grow, I started making changes to scale it. This is about one of those changes. Back when Scratch had ~1,000 images stored and only…