List of Useful Ruby Gems When Building Web Apps
Published in
3 min readAug 6, 2022
The Ruby community created many Gems that are useful for building web applications. When I was building web applications over the last few years using RoR I came across a useful Ruby Gem, I will share it in the list below 💎
Changelogs
I will update this article from time to time if I find more useful ruby gems.
24 Mar 2023
: add testing gemssimplecov
,factory_bot
,faker
.14 Dec 2022
: addadministrate
in Admin Interface category.21 Dec 2022
: add soft delete gems in Data Manipulation category.01 Mar 2022
: add json api section
Categories :
- Authentication & Authorization
- Admin Interface
- Code Analysis
- Code Formating
- Configuration
- Data Manipulation
- Debugging Tools
- Environment Management
- HTTP Client
- Logging
- Notification
- Pagination
- Scheduling
- Searching
- Testing
Detail :
1 ) Authentication & Authorization
- Device : Flexible authentication solution for Rails with Warden.
- Cancan : The authorization Gem for Ruby on Rails.
2 ) Admin Interface
- Rails Admin : RailsAdmin is a Rails engine that provides an easy-to-use interface for managing your data.
- Administrate : A Rails engine that helps you put together a super-flexible admin dashboard.
3 ) Code Analysis
- Brakeman : A static analysis security vulnerability scanner for Ruby on Rails applications
- Simplecov : Code coverage for Ruby with a powerful configuration library and automatic merging of coverage across test suites
4 ) Code Formating
- Rubocop : A Ruby static code analyzer and formatter, based on the community Ruby style guide.
5 ) Configuration
- Figaro : Simple Rails app configuration
- Dotenv : A Ruby gem to load environment variables from `.env`.
6 ) Data Manipulation
- Blazer : Business intelligence made simple
- Chartkick : Create beautiful JavaScript charts with one line of Ruby
- RailsErd : Generate Entity-Relationship Diagrams for Rails applications
- Paranoia : Rails soft deleted.
- Discard : Soft deletes for ActiveRecord done right
7 ) Debugging Tools
- pry : A runtime developer console and IRB alternative with powerful introspection capabilities.
- byebug : Debugging in Ruby 2
8 ) Environment Management
9 ) HTTP Client
- Httparty : 🎉 Makes http fun again!
- Faraday : Simple, but flexible HTTP client library, with support for multiple backends.
- async-http : An asynchronous client and server implementation of HTTP/1.0, HTTP/1.1 and HTTP/2 including TLS
10 ) Logging
- Lograge : An attempt to tame Rails’ default policy to log everything.
11 ) Notification
- Rpush : The push notification service for Ruby.
12 ) Pagination
- kaminari : ⚡ A Scope & Engine based, clean, powerful, customizable and sophisticated paginator for Ruby webapps
- will_paginate : Pagination library for Rails, Sinatra, Merb, DataMapper, and more
- pagy : Faster pagination in Ruby
13 ) PDF
- Prawn : Fast, Nimble PDF Writer for Ruby
14 ) Scheduling
- whenever : Cron jobs in Ruby
- sidekiq cron : Scheduler / Cron for Sidekiq jobs
15 ) Searching
- ransack : Object-based searching.
- elasticsearch-rails : Elasticsearch integrations for ActiveModel/Record and Ruby on Rails
- searchkick : Intelligent search made easy
16 ) Testing
- Rspec Rails : RSpec for Rails 5+.
- Faker : enerating fake data such as names, addresses, and phone numbers.
- factory_bot_rails : fixtures replacement with a straightforward definition syntax
- Simplecov : SimpleCov is a code coverage analysis tool for Ruby.
17 ) Response API (JSON)
- alba : Alba is a JSON serializer for Ruby.
- api-pagination : Link header pagination for Rails and Grape APIs.