Squishify
Every major image plugin optimizes images after they’re uploaded — the full-size originals still travel over the wire, still land on your server, and still eat disk space.
Squishify flips the order. Drag a batch of images into the Squishify editor (right inside wp-admin), tune format, quality, and size with a live before/after comparison, and nothing touches your site until you click Upload. Only the finished, optimized files reach your Media Library.
- Real encoders — libavif (AVIF), libwebp (WebP), MozJPEG, and Oxipng (PNG), running as WebAssembly in your browser
- Batch queue with per-image format, quality, effort, and resize controls
- Live before/after comparison loupe
- Upload straight to the Media Library when you’re ready
- No cloud API, no credits, no quotas — the work happens on your machine
- Your images stay private until you upload them to your own site
Images are capped at 2560px on the longest edge before encoding — the same threshold WordPress core itself uses (big_image_size_threshold). Because the file you upload is already at or under that size, WordPress never generates its own separate -scaled copy: what you see in the editor is what ends up in your Media Library, one file, no server-side duplicate.
assets/squishify-wp.js is shipped unminified — a Rollup/Vite bundle of the plugin's source with original names and formatting intact, not obfuscated or compressed.
Credits
Squishify’s WebAssembly encoders are provided via jSquash (MIT/Apache-2.0), which wraps libavif (BSD-2-Clause), libwebp (BSD-3-Clause), MozJPEG (BSD-style), and Oxipng (MIT) — all GPL-compatible. The .wasm files are unmodified upstream builds.
