Skip to content
Make images smaller using best-in-class codecs, right in the browser.
TypeScript JavaScript CSS C++ Rust Shell Other
Branch: master
Clone or download


Type Name Latest commit message Commit time
Failed to load latest commit information.
.github/ISSUE_TEMPLATE Update issue templates to include feature request (#318) Nov 19, 2018
codecs Revert `docker run --rm` change May 13, 2020
config Using travis-size-report (#596) May 20, 2019
src Further speed improvements May 13, 2020
.clang-format Fixup clang-format May 14, 2020
.editorconfig Use strict TypeScript, enable TSLint, update all types to work in str… Mar 29, 2018
.gitignore Make WebP decoder use memory views (#145) Aug 21, 2018
.nvmrc Update Node.js to v10.16.2 Aug 6, 2019
.travis.yml Adding CI step to compare build size to previous master build. (#450) Feb 11, 2019 Initial commit. Mar 2, 2018
LICENSE Initial commit. Mar 2, 2018 Create CSS typings before build. Fixes #251. (#350) Nov 28, 2018
_headers.ejs Adding manifest to headers Nov 9, 2018
_redirects.ejs Add basic history handling (#288) (#309) Dec 12, 2018
emscripten-wasm.d.ts Add types to module initialize func May 21, 2018
global.d.ts Building on #275 (#289) Nov 14, 2018
icon-large-maskable.png add maskable icon file Oct 30, 2019
package-lock.json Swap OptiPNG with OxiPNG Apr 9, 2020
package.json Swap OptiPNG with OxiPNG Apr 9, 2020
renovate.json Disable renovate May 5, 2020
sizereport.config.js Using travis-size-report (#596) May 20, 2019
tsconfig.json Making processor-worker a real worker (to TypeScript) (#351) Nov 29, 2018
tslint.json Add Hq{2,3,4}x (#624) Jun 18, 2019
webpack.config.js Fix SyntaxError for `{}.nextTick` Apr 1, 2020


Squoosh is an image compression web app that allows you to dive into the advanced options provided by various image compressors.


Google Analytics is used to record the following:

  • Basic visit data.
  • Before and after image size once an image is downloaded. These values are rounded to the nearest kilobyte.

Image compression is handled locally; no additional data is sent to the server.

Building locally

Clone the repo, and:

npm install
npm run build

You can run the development server with:

npm start
You can’t perform that action at this time.