Miso is a unified API for simple image operations commonly used on the web. It provides backends for often used graphic libraries, but it's also pretty easy to plug in your own backend.
A unified API is helpful when you run your code on a number of different boxes and architectures. For instance, you could develop your web application on your Mac with the Core Image backend  and deploy to your Linux server with an ImageMagick/GraphicsMagick backend. You could even have the API talk to your custom distributed image processing backend.
Note how this means you will never have to install ImageMagick again (;
$ gem install miso --source http://gemcutter.org
Miso can be used in three different ways, each useful in different situations.
1. For the quick crop ::.('input.jpg', 'output.jpg', 120, 100) 2. For the elaborate business logic @image = ::.('input.jpg') @image.crop(120, 100) if [:crop] @image.fit(120, 100) if [:fit] @image.write('output.jpg') 3. As an option class Attachment has_variant :avatar, :processor => ::..crop(120, 100).fit(60, 40) end Which works like this; factory = ::..crop(123, 456) factory.apply('input.jpg', 'output.jpg')
But wait, there is more! Read the API documentation for more goodies.
: SUPPORTED BACKENDS
Currently supported backends are: Core Image, ImageMagick, and GraphicsMagick, because those are the ones we, and our contributors use. If you want to contribute backends we're happy to accept patches!
~> GraphicsMagick * Paul Vaillant (> github.com/pvaillant <)
@garyyuen: ‘miso with indian flavors. seems ok.’ @Oracl: ‘@veganza I love miso! :)’ @lehudgins: ‘ok fine. Miso totally does go kinda bad after a year.’ Wikipedia: ‘High in protein and rich in vitamins and minerals, miso played an important nutritional role in feudal Japan.’ jacqui: ‘miso wanna use it!’