A Ruby gem that automatically optimizes CarrierWave image uploads using jpegoptim and optipng.
CarrierWave ImageOptimizer is a Ruby gem that automatically compresses images uploaded via CarrierWave. It integrates jpegoptim and optipng tools to reduce file sizes, improving load times and saving storage. The gem works by adding an optimization step to CarrierWave's upload processing pipeline.
Ruby on Rails developers using CarrierWave for file uploads who need to optimize images for web performance. It's particularly useful for applications handling user-generated image content.
It provides a dead-simple way to add lossless or controlled lossy image optimization directly within CarrierWave's workflow, without requiring manual optimization steps. The gem is lightweight, well-tested, and supports flexible configuration per image version.
This gem allows you to simply optimize CarrierWave images via jpegoptim or optipng.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Directly hooks into CarrierWave's processing pipeline, allowing optimization with a single line of code in uploader classes, as demonstrated in the usage examples.
Supports lossless and lossy JPEG optimization with a configurable quality parameter (0-100), enabling precise balance between file size and image quality for specific versions.
Specifically documented for Heroku with buildpack instructions, making deployment straightforward on this platform without manual tool installation hassles.
Allows optimization to be applied selectively to specific image versions, providing granular control over processing, as shown in the version block examples.
Relies on separate installation of jpegoptim and optipng system utilities, adding setup complexity and potential deployment issues, especially in containerized environments.
Only optimizes JPEG and PNG files; lacks native support for modern formats like WebP, which are critical for cutting-edge web performance optimization.
Heroku deployment requires adding multiple buildpacks and pushing changes, which is more involved than a standard gem installation and could lead to configuration errors.