Shipping on the edge: what changed when we moved rendering closer

Moving rendering to the edge sounded like an infrastructure decision. It turned out to be a product decision, because the parts of the app that felt slow were never the parts we had instrumented.
Our first win was boring: the shell now streams in under 120ms almost everywhere. The second win was cultural — once the baseline was fast, regressions became obvious instead of debatable.
The tradeoff is a smaller runtime. No native modules, no long-lived processes, and a filesystem that only pretends to exist. We replaced three dependencies with roughly forty lines of plain JavaScript and nobody missed them.
If you take one thing away: measure the ninetieth percentile from the places your users actually are, then decide. Averages will happily lie to you for years.
“The test of a system is whether it still feels intentional after the people who designed it have moved on.”


