Stretta is a simple, fast, private, and intuitive desktop application for compressing images. Built with Rust, Tauri, React, Vite, Tailwind, and shadcn/ui, it does everything you could want an image compressor to do
This was just a simple side project to learn Rust but I can continue expanding it if anyone finds it useful. I'm by no means a good programmer so if you find anything stupid in the code or something that could be improved, feel free to let me know
Just head to the releases and download the latest one. dmg is for mac and exe is for windows
- Multiple Compression Formats: Support for JPEG, PNG, WebP (lossy and lossless)
- Drag & Drop Interface: Simply drag and drop images to compress them
- Batch Processing: Compress multiple images at once
- Quality Control: Adjustable compression quality settings (10-100%)
- Before/After Comparison: Visual comparison slider to see compression results
- Dark/Light Mode: Automatic theme switching with manual override
- Cross-Platform: Available for Windows, macOS, and Linux
- No Internet Required: All processing happens locally on your machine
- Privacy First: Your images never leave your device
- JPEG (.jpg, .jpeg)
- PNG (.png)
- GIF (.gif)
- WebP (.webp)
- BMP (.bmp)
- Lossy (JPEG): Best for photos, smaller file sizes
- Lossless (PNG): Perfect for graphics with transparency, no quality loss
- WebP Lossy: Modern format with better compression than JPEG
- WebP Lossless: Superior compression compared to PNG
- Launch the application
- Drag and drop images into the main window or click to select files
- Adjust settings (optional):
- Go to Settings to change compression quality
- Choose your preferred compression method
- Toggle between light and dark themes
- Compress your images by clicking "Start Compression"
- Review results in the Results page with before/after comparisons
- Export compressed images to your desired location
- Quality: 10-100% (affects lossy compression methods)
- Method Options:
Lossy (JPEG): Traditional JPEG compressionLossless (PNG): PNG compression without quality lossWebP Lossy: Modern lossy compression with better efficiency than JPEGWebP Lossless: Modern lossless compression with better efficiency than PNG
- Lossy compression uses the image crate with a JPEG encoder
- Lossless compression uses the oxipng crate and its PNG encoder
- WebP compression uses the webp crate. JPEG compression can sometimes produce smaller file sizes compared to WebP compression, so the program defaults to normal JPEG lossy compression for any files where WebP compression doesn't make sense
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.