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. Source: RSpec.

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.