The gems I use on almost all my projects (because today is Friday... if you know what I mean)
-
kaminari
Great pagination gem. I like writing my custom paginators as partials instead of Ruby classes.
-
rails_config
Even if there's "rails" in the name, this gem also works with other frameworks. Essential to have a global configuration object available everywhere in your app. I like the fact that it is environment-aware.
-
decent_exposure
I use decent_exposure and/or helper methods in my controller and dislike seeing any "@" character in my controllers :p.
-
haml
I tried slim but came back to the old-and-good HAML... But I like the fact that it's still well maintained.
-
state_machine
Because it's a well maintained state machine gem, I've been using it for years and it works well with many ORMs.
-
carrierwave
IMHO, best gem for file uploads. I like writing a class for each uploader. Don't like the old approach of a giant config Hash in persistence models like in Paperclip.
-
simple_form
Because it's just form_for on steroids and because it haz Twitter Bootstrap compatibility integrated.
-
jbuilder
When I just want a custom JSON response and don't feel the need to write a full serialization Ruby class, I just throw a jbuilder view and relax.
-
pry-rails
Because it's the best for debugging. Final.
-
rspec-rails
Because because.
-
factory_girl
Tried Fabricator once but came back to FG. Well maintained, excellent doc...
-
routing-filter
It's just the best to ease the development of custom URLs. Even if I don't use it for custom URLs, I use the Paginator filter to have /users/page/2 URLs instead of the ugly /users?page=2 which is not SEO friendly.
-
responders
I use the FlashResponder so that I don't have to write flash messages everywhere in my app controllers and/or back-office.
-
devise
Of course.
-
omniauth and omniauth-pipomolo
Of course, of course!
-
basic_active_model
To write ActiveModel plain classes before Rails 4 and its ActiveModel::Model...
-
pundit
One of the cleanest and ORM-agnostic solution to write a scallable authorization system using plain Ruby classes. Never came back to cancan after this one.
-
faraday and/or httparty
When I need to access third-party APIs, I write my adapters using HTTParty or Faraday if I want to full control.
-
twitter-bootstrap-rails
My BO/admin now all use Bootstrap because it's just the best.