Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
A Ruby Rack-based gem for on-the-fly processing - suitable for image uploading in Rails, Sinatra and much more!

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
extra_docs
features
generators/dragonfly_app
lib
samples
spec
yard
.gitignore
.yardopts
LICENSE
README.md
Rakefile
VERSION
config.rb
config.ru
docs.watchr
dragonfly-rails.gemspec
dragonfly.gemspec
irbrc.rb

README.md

Dragonfly

Dragonfly is a {http://rack.rubyforge.org Rack} framework for on-the-fly processing and encoding. It includes an extension for Ruby on Rails to enable easy image handling.

For the lazy rails user

environment.rb:

config.gem 'dragonfly-rails', :lib => 'dragonfly/rails/images'
config.middleware.use 'Dragonfly::MiddlewareWithCache', :images

Migration:

add_column :albums, :cover_image_uid, :string

Model:

class Album < ActiveRecord::Base
  image_accessor :cover_image            # Defines reader/writer for cover_image
  # ...
end

View (for uploading via a file field):

<% form_for @album, :html => {:multipart => true} do |f| %>
  ...
  <%= f.file_field :cover_image %>
  ...
<% end %>

View (to display):

<%= image_tag @album.cover_image.url(:gif) %>
<%= image_tag @album.cover_image.url('400x200') %>
<%= image_tag @album.cover_image.url('100x100!', :png) %>
<%= image_tag @album.cover_image.url('100x100#') %>
<%= image_tag @album.cover_image.url('50x50+30+30sw', :tif) %>
<%= image_tag @album.cover_image.url(:rotate, 15) %>
...etc.

Using outside of rails, custom storage/processing/encoding/analysis, and more...

Dragonfly is primarily a Rack app, the Rails part of it being nothing more than a separate layer on top of the main code, which means you can use it as a standalone app, or with Sinatra, Merb, etc.

It is intended to be highly customizable, and is not limited to images, but any data type that could suit on-the-fly processing/encoding.

For more info, consult the DOCUMENTATION

Issues

Please use the github issue tracker if you have any issues.

Suggestions/Questions

{http://groups.google.com/group/dragonfly-users}

Credits

Copyright

Copyright (c) 2009 Mark Evans. See LICENSE for details.

Something went wrong with that request. Please try again.