
I built a client-side image compressor that never uploads your files
Most image compression tools send your files to a server. I wanted one that didn't, so I built nosend.io.
Everything runs in the browser using the Canvas API. JPG, PNG, WEBP, GIF, and HEIC are all supported. Nothing is transmitted anywhere - the compression happens locally on your device.
A few technical details for those curious:
- Compression uses the browser's native Canvas API (drawImage + toBlob with quality parameter)
- HEIC conversion uses heic2any, loaded on demand
- Batch processing supported, no file size limits
- Works offline after first load
Would be curious to hear from people in this sub about the quality tradeoffs - particularly around PNG (which is lossless via canvas) vs JPG at various quality settings. Happy to answer questions.