views:

1484

answers:

7

I'm starting work on a project using Rails, but I'm waiting for the 3rd edition of the pragmatic rails book to come out before I purchase a book.

Anyway, my question is a bit more pointed than how do I get started...

What are some of the must have gems that everyone uses?

I need basic authentication, so I have the restful authentication gem, but beyond that, I don't know what I don't know. Is there a run down of this information somewhere? Some basic setup that 99% of the people start with when starting a new rails application?

Thanks in advance.

+8  A: 

The gems and plugins that I tend to use on most of my projects are:

guitsaru
I'd recommend Paperclip (http://github.com/thoughtbot/paperclip/tree) instead of Attachment Fu - I've found it much simpler and less troublesome.
Ben Scofield
also authlogic (http://github.com/binarylogic/authlogic) pwns restful authentication
Neil Sarkar
+4  A: 

For pagination, will_paginate.

Zach
+3  A: 

This is very, very subjective because it all depends on what your application does! However, I've just had a look at the Gems I have installed and the one that absolutely does leap out as mandatory is Capistrano.

BTW Restful Authentication is a Rails plugin not a Gem.

John Topley
+1  A: 

HAML is a must have. You'll never think of HTML in the same way again -- No more tag soup.

KJG
You trade tag soup for significant whitespace. Get that python out of my rails! BAH!
Orion Edwards
Yar, HAML is nasty, but that's just my opinion.
Dan Harper - Leopard CRM
A: 

The only gems you need are:

  • Rails
  • Rake

If you "gem install rails" you'll get everything you need for Rails. You only need gems when you need them, so it's not worth worrying about before then.

EDIT: Actually there are a couple more you'll probably need:

  • mysql - or whatever Ruby database driver you need
  • mongrel - you don't necessarily need this until production, but it's nice to use in dev/test too
  • ZenTest - I use this mainly for "autotest" so that my tests run in a console window whenever my source files change

There could be many other gems that help you but we'd need more info from you to know if they're applicable, eg:

  • Web scraping (hpricot)
  • CSV (fastercsv)
  • Amazon S3 support (aws-s3)
  • Image manipulation (rmagick)
  • Graphing (gruff) - I use this as a plugin
  • Role-based security (role_requirement) - This one is a plugin too
Dan Harper - Leopard CRM
But how do you know you need them, unless you know what's out there? :-)
Orion Edwards
I guess what I mean is, the OP didn't give us any indication of what he might need apart from authentication. Without knowing what kind of app he's building, how can we recommend gems?
Dan Harper - Leopard CRM
OK, I found a couple of others that I use that may help the OP, edited to reflect this.
Dan Harper - Leopard CRM
+1  A: 
Sam Saffron
+1  A: 

How can nobody have mentioned andand yet? It's the best thing since ||=

Orion Edwards