squeezy
Image compressor and PDF merger built with Flask
What It Does
Users upload images and PDFs. Squeezy compresses images in memory and merges PDFs, then returns a download link via a temporary UUID token.
No files are saved to disk. Everything is processed in-memory and discarded after download.
How It Works
The backend uses Flask and Pillow. The flow:
- Client uploads an image to the Flask endpoint.
- The server reads it into a
BytesIObuffer. - Pillow compresses the image as progressive JPEG at quality 85.
- The result is mapped to a UUID4 token and served as a download link. Each user gets an isolated token — no overlap between requests.
Compression can reduce file size by up to 95%. Buffers are cleared once the download completes.
Step 1: Set target dimensions and compression ratio using sliders, then upload your file
Step 2: Choose multiple files and combine them directly into a single, optimized PDF