Sunday, February 8, 2009

file_column_on_steroids - Rails Plugin

I've been a huge fan of the rails file column plugin by Sebastian Kanthak. It owes it's popularity to it's being amongst the first file upload plugins in the Rails world. It's simple and easy to use, but what I loved most about it was it's relative un-obtrusiveness. It didn't require it's own model and table cos it didn't try to be too intelligent.

However, since quite sometime, it seems to be dropping in popularity to other plugins offerring more features. It looks like it's not bee updated since quite some time.

I had just 2 major gripes with file_column:
  1. It stored all files under a single folder. As the number of files increased, you'd run into problems of having too many sub-directories directly within one directory.
  2. It didn't play well with S3 which a lot of their other plugins did.
We, at Contests2Win, were using this plugin extensively and didn't want to look at moving to another plugin. Over time, we've addressed the 2 issues mentioned above.

We have made some modifications to file_column and have been using it to manage more than a million images and videos. User uploaded images are processed (resized, encoded, etc) and uploaded onto S3.

In our bid to give back to the open source community, we have released our modifications under the MIT license. Check out our version of file_column_on_steroids on github.