(String: {%- set hs_blog_post_body -%} {%- set in_blog_post_body = true -%} <span id="hs_cos_wrapper_post_body" class="hs_cos_wrapper hs_cos_wrapper_meta_field hs_cos_wrapper_type_rich_text" style="" data-hs-cos-general-type="meta_field" data-hs-cos-type="rich_text"> <div class="blog-post__lead h2"> <p>We love sharing knowledge and we love transparency, so check us out in all our gem glory!</p> </div></span>)

Top 10 Ruby on Rails Gems To Make Ruby Dev's Life Easier

Photo of Błażej Hadzik

Błażej Hadzik

Updated Mar 1, 2024 • 4 min read

We love sharing knowledge and we love transparency, so check us out in all our gem glory!

Have you ever wondered what are the most often used gems at Netguru? Yes! No?

Well here it is, a list of our most commonly used gems!

This list is hand-picked by our developers and some of them are must-haves for you and your project too. We love sharing knowledge and we love transparency, so check us out in all our gem glory!

Devise

The first is our favourite. We love devise for loads of reasons. First of all, it makes adding authentication to any web application very simple. Second, it supports Omniauth for Facebook and Google+ integration. And lastly, it just works perfectly. We love it. Source: Devise.

Haml

Using .erb files can be painful, especially when it comes to a larger project with multiple views. Using HAML can clean up your html to a minimized version that looks much better. It's compiled into plain HTML with ease, so your browser won't see any difference. It also checks whether your syntax and indentations are good—no more silly bugs. Source: Haml.

SimpleForm

We cannot imagine an app without using this. This small gem allows us to build new Rails forms within seconds. Fully customizable and quick to use. We love auto labels, placeholders and built in html5 validations. Must have. Source: SimpleForm.

ActiveAdmin

Either you own a big CRM-app or marketing landing page, you can always manage your users and other models associated with data in application. Within a simple steps you can create, update and destroy new records from your app. ActiveAdmin allows you to create custom sections so you can have i.e. your favourite analytics in admin panel. Perfect match. Source: ActiveAdmin.

RSpec

You probably know how tests are important for building a good quality product. Features change while prototyping the product and it might have a huge impact on how other parts of your product work. That’s why we write specs that test all key functionalities. It’s the part of our daily job and it’s called TDD.

Faker

How many times have you tried to make up names of the model params? We know that feeling, so we use Faker. It basically generates fake data like sentences, names, numbers, addresses etc. It’s extremely handy when writing tests. It generates fake, yet unique, data each time we run tests, so we can be sure our specs work 100%. Source: Faker.

Better Errors

Standard Rails error pages say almost nothing. Better Errors replaces them with modern, well-designed and informative pages with full stack trace. When an exception occurs, it also gives you the source code inspection. You can even debug directly from an error page. Source: Better Errors.

Carrierwave

If you have ever tried to upload file within an app, you know that implementation isn't so simple. From file format and size validation to multiple file upload, Carrierwave handles it all. This is another must-have for us. It works just fine with PostgreSQL and MongoDB as well. Source: Carrierwave.

Delayed Job

Are you expecting long and time-consuming actions that must run in the background? The solution is to use Delayed Job. It basically creates extra processes to handle your operation. From bulk emails, to sending to complex algorithms, Delayed Job helps us to keep an app running 24/7 with no downtime. Source: Delayed Job.

Decent Exposure

We all hate repeating ourselves, so here we have it. Decent Exposure allows us to create exposed variables that can be used across the controllers’ actions instead repeating instance variables. Exposed variables are accessible from views as well and memoize the resultant values. Pure awesomeness. Source: Decent Exposure.

PS. Want to write a gem yourself? Start with our step by step tutorial describing a powerful set of tools to help you right away in creating gems.

Photo of Błażej Hadzik

More posts by this author

Błażej Hadzik

There are 2 places you can find Błażej. You can either see him behind his stickered Macbook or...
How to build products fast?  We've just answered the question in our Digital Acceleration Editorial  Sign up to get access

We're Netguru!

At Netguru we specialize in designing, building, shipping and scaling beautiful, usable products with blazing-fast efficiency
Let's talk business!

Trusted by: