An open API service indexing awesome lists of open source software.

https://github.com/angus6b23/squash

Squash is an image optimization tool built on top of codecs provided by squoosh.
https://github.com/angus6b23/squash

avif image-optimization image-processing jpegxl mozjpeg oxipng react squoosh webapp webp

Last synced: 6 months ago
JSON representation

Squash is an image optimization tool built on top of codecs provided by squoosh.

Awesome Lists containing this project

README

          


squash-logo

# Squash


GitHub License
Liberapay receiving

An image optimization tool allows you to compress and covert images in your browser

[Live Site](https://squash.12a.app)

## Screenshots


kiku-screenshot
kiku-screenshot

## Features

- Up-to-date encoders, using encoders provided by [Squoosh](https://github.com/GoogleChromeLabs/squoosh)
- Secure and private, no images are uploaded to any server
- No file sizes or count limit forever
- Batch optimization, drag multiple images and click Optimize All and all done
- No installation required
- You don't have to mess with cli or random npm packages
- Do not collect a five-page long "basic visitor data"
- Automatically select the best method for you with sane defaults

## Why building another image optimization tool?

I have tried:

- [Squoosh](https://github.com/GoogleChromeLabs/squoosh) - Best of all, but do not support batch optimization and [unlikely to be in near future](https://github.com/GoogleChromeLabs/squoosh/issues/1259)
- [@squoosh/cli](https://www.npmjs.com/package/@squoosh/cli) - Do not work for me and no longer maintained :(
- [Caesium Image Compressor](https://caesium.app/) - First option appears on alternative.to, but functionality really limited (5 files a time and do not support converting formats)
- tinyXXX(Insert image format here) - Those creepy webpages really make me feel reluctant to upload my images to their sites

Good thing is that squoosh is open-sourced and I can build my own version easily

## Known issues

- Browsers with dynamic import or canvas disabled (E.g. librewolf) will not work

## Building the application by yourself

1. Clone the git repository

`git clone https://github.com/angus6b23/squash`

2. Run yarn / npm to install dependencies

Using yarn
`yarn`

Using npm
`npm install`

3. Build and package the files

Using yarn
`yarn build`

Using npm
`npn run build`

4. If the build process is successful, the files will be available in "dist" folder

## License

![img](https://www.gnu.org/graphics/agplv3-with-text-162x68.png)

This app is provided under AGPL v3.0 or later. For details, please see