Files
squoosh/README.md
Surma 13ff0d5934 tmp
2024-11-26 11:44:40 +00:00

1.5 KiB

Squoosh!

Squoosh is an image compression web app that reduces image sizes through numerous formats.

Privacy

Squoosh does not send your image to a server. All image compression processes locally.

However, Squoosh utilizes Google Analytics to collect the following:

  • Basic visitor data.
  • The before and after image size value.
  • If Squoosh PWA, the type of Squoosh installation.
  • If Squoosh PWA, the installation time and date.

Developing

Web App

To develop for Squoosh:

  1. Clone the repository
  2. To install node packages, run:
    npm install
    
  3. Then build the app by running:
    npm run build
    
  4. After building, start the development server by running:
    npm run dev
    

Codecs

All build instructions for codecs are written using Nix. If you have Nix installed, you can rebuild the WebAssembly binaries by running:

# Build the codec
cd codec/<codec>
nix run '.#updateRepoBinaries'

If you do not have Nix installed, you can use the provided Docker image to create a shell with nix available:

# Build the image (only needs to be done once).
docker build -t squoosh-nix ./nix
docker run --name squoosh-nix -ti -v $PWD:/app squoosh-nix /bin/sh
# ... continue with the steps above

Contributing

Squoosh is an open-source project that appreciates all community involvement. To contribute to the project, follow the contribute guide.