Designed to be local simulation of CDN's resize feature
How to use with Rails
group :development do
gem "rack_resize", require: "rack_resize/rails_autoload"
end
How to use with Rack
use RackResize::RackApp, processor: :imlib2, assets_folder: "samples"
use Rack::Static, urls: [""], root: "samples", index: "index.html" # optional
URL Formats:
Cloudflare format: (can be used with helpers from carrierwave-cloudflare gem)
/cdn-cgi/image/width=426,format=auto/assets/pets/dog.jpg
Fastly and bunny.net: (tbd)
/assets/pets/dog.jpg?width=300
Configuration:
RackResize.configure do |config|
config.assets_folders = { "assets" => Rails.root.join('app', 'assets', 'images') }
config.processor = :sips / :vips / :mini_magick / :imlib2
config.default_quality = 95
config.save_resized = false
config.cache_folder = Rails.root.join('tmp', 'rack_resize_cache') # used if save_resized enabled
config.http_cache_max_age = 86400
end
Supported Processing Backends:
| libaray | dependency | config |
|---|---|---|
| mini_magick |
|
|
| vips |
|
|
| sips (MacOS only) | none |
|
| imlib2 |
|
|