I wanted to sharpen and upscale images without uploading them to some server. It turns out you can run the whole ML model right in the browser — the image never leaves the device. Here's what I learned shipping it as two free tools.

The stack

TensorFlow.js (WebGL backend) for inference

UpscalerJS as a thin wrapper around an ESRGAN super-resolution model

All loaded from a CDN — no build step, no backend