@nap.codes vs Squoosh
Squoosh (from the Chrome team) is the gold standard for tuning a single image — you get side-by-side preview, every codec knob, and unmatched quality control. It processes one image at a time. /squish/ uses the same MozJPEG/OxiPNG engines but adds bulk mode with folder preservation, target-size iteration, and ZIP export. Different tools for different jobs.
Side-by-side
| Feature | @nap.codes | Squoosh |
|---|---|---|
| Encoder engines | MozJPEG, OxiPNG, WebP, AVIF | MozJPEG, OxiPNG, WebP, AVIF, JXL |
| Where it runs | Your browser (WASM) | Your browser (WASM) |
| Bulk mode | ✓ Full folder | No — single image |
| Preserves folder structure | ✓ via ZIP | N/A |
| Side-by-side quality preview | Delta % + preview | ✓ Pixel-perfect diff |
| Codec knob depth | ~6 knobs per format | ~15 knobs per format |
| Target file-size mode | ✓ Iterate to a size | No |
| JXL support | No | ✓ |
| Signup required | No | No |
| Works offline | ✓ PWA cache | ✓ PWA cache |
When to pick us
Pick /squish/ when you've got a batch — a folder of blog images, a portfolio site's photo grid, a screenshot dump. Also when you have a specific file-size target ("everything under 200 KB"). Also when you want ZIP output with the folder structure preserved.
When to pick Squoosh
Pick Squoosh when you're tuning a single hero image and want the finest-grained control over MozJPEG's trellis quantization or WebP's spatial noise shaping. Their per-codec knob depth is unmatched. Also for JXL — /squish/ hasn't added it yet.
Try the @nap.codes version
Drop a folder, pick a codec, target a file size, download ZIP.
→ Open /squish/