What's the best Rails image management solution?

Suppose you are building Rails websites (different applications) where:

  1. Users will upload images, such as VRBO or AirBnb.
  2. You have a listing of companies, and just want import copies of logos and normalize the size.

Would you use Cloudinary?

Or one of these other ones mentioned in this Quora thread, such as:

Figuring that I shouldn’t use plain S3 and Cloudfront. I’ll need images normalized by a couple different sizes.

I’ve used cloudinary in past projects and am a big fan. It’s very easy to use, and does everything I’ve wanted. The rails gems also make it super easy to upload images (drag and drop, upload before form submit) and add images to any model.

The solution that I’m using now is gem refile by the original author of Carrierwave. Integration with Amazon S3 is easy. Maybe I’ll try Cloudinary in my next app.

These are the answers I’ve gotten so far from http://parley.rubyrogues.com/t/whats-the-best-rails-image-management-solution/3066:

jjb4d

I’m using Cloudinary and have had a fantastic experience with the product and support so far.
I don’t have any experience with any of the others.

admin

We use https://github.com/joevandyk/node-resize-image1. The raw images are stored on S3, you can resize the images to any size just by changing the thumbnail URL.
There’s also things like http://agschwender.github.io/pilbox/2.

inge8h

I’ve been working on my own solution for a while:
GitHub - elektronaut/dynamic_image: DynamicImage is a Rails plugin that simplifies image uploading and processing
GitHub - elektronaut/dis: A file store for your Rails app
Storage is backed by any combination of local and cloud storage you’d like (anything Fog supports, basically). Wrapping it in a simple Rails app that just provides an API for storing images should be relatively straightforward.
Apologies if the documentation is a bit obtuse. I just need to find a solid weekend to finalize the API, do a proper release and write a more user friendly guide.

Maybe I am old school, but I still use and love Paperclip: https://github.com/thoughtbot/paperclip. Do people need all those other features in those other packages or are they already doing that in iPhone, etc?

Paperclip is easy to normalize photos (sizing, cropping etc) and to setup with S3:

# config/initializers/paperclip.rb
defaults = {}
defaults[:storage]        = (Rails.env.production? || Rails.env.staging?) ? :s3 : :filesystem
defaults[:s3_credentials] = (Rails.env.production? || Rails.env.staging?) ? Settings.s3 : nil
defaults[:s3_protocol]    = Rails.env.production? ? :https : :http

Paperclip::Attachment.default_options.merge!(defaults)

I use Paperclip, too.

I use Paperclip for both development and production. I missed some documentation, but I have promised top contribute on that this August, so it would be a little easier for others to use.

I like Paperclip because it is a lightweight gem that does one thing great.