An image compressor that runs entirely on your browser, completely offline. Powered by libcaesium-wasm. You can try it at caesium.app.
- JPG, PNG and WebP supported
- Lossy and lossless compression
- Keeps images metadata
- Before/after comparison
- Runs entirely on your browser, no images are uploaded or processed on any external server. Try loading the app and then turn off your internet connection to see the magic.
Make sure to install the dependencies:
npm install
Start the development server on http://localhost:3000
:
npm run dev
Build the application for production:
npm run build
Locally preview production build:
npm run preview
You can pull the official docker images
docker pull lymphatus/caesium-app-web:latest
or build it yourself
docker build -t caesium-web-app .
docker run -d -p 3000:3000 lymphatus/caesium-app-web:latest
Then you can visit localhost:3000 to start using the app.
You can set the following ENV
variables to tweak the compressor to your preferences.
NUXT_PUBLIC_SEND_USAGE_REPORT
: (boolean | default:true
) send usage stats for the compressed images to theNUXT_PUBLIC_API_ENDPOINT
. Set it tofalse
if you don't care about it.NUXT_PUBLIC_API_ENDPOINT
: (string | default:""
) the endpoint where you can send compression stats.NUXT_PUBLIC_COMPRESSOR_MAX_FILES
: (number | default:5
) how many files are allowed to be added to the list in the same batch.NUXT_PUBLIC_COMPRESSOR_MAX_FILE_SIZE
: (number | default:20000000
) max limit for each image size, in bytes.