Our preferred list of commonly used Ruby gems, tools & services we like to use for our Rails platforms.
π Gems, Libraries & Services
Pricing below are for a small to medium sized production application with more than 100 active users. Most external service's pricing are based on usage so will vary based on popularity of the app.
| Name |
Details |
Pricing |
| PostgreSQL |
Our primary SQL database for record storage. |
|
| Redis |
Used for cache, jobs queue. |
|
Active Storage |
Rails supported file record storage. |
|
| Filestack |
We prefer Filestack to handle all security and manage the file upload experience where uploading files is a cruitial part of the application. |
from $49/mo |
Application Monitoring π΅οΈββοΈ
| Name |
Details |
Pricing |
| Cloudflare |
DNS service with request monitoring, DDoS protection and other security features. |
from $0/mo |
| HoneyBadger |
Production app monitoring, crash reporting & notifications. |
from $0/mo |
| Skylight |
App performance monitoring & insights to optomise for faster app response. |
from $20/mo |
| Papertrail |
Server logs archive and management. |
from $8/mo |
| Lograge |
Tame Rails' request logging. |
|
| Lograge::Sql |
Extension to Lograge gem for taming SQL queries. |
|
| Logstop |
Remove personally identifiable information (PII) out of logs. |
|
| Name |
Details |
Pricing |
| Sqreen |
Application level security platform. |
from $0/mo |
| Rack::Attack |
Block and throttle abusive requests. |
|
| Devise Security |
Devise gem extension to add additional security features for modern web applications. |
|
| Lockbox |
Database fields encryption. |
|
| Blind Index |
Securely search encrypted database fields. |
|
| StrongPassword |
Password strength validation. Don't allow weak passwords. |
|
| ValidEmail2 |
Validate email address, prevent disposable emails and blacklist domains. |
|
User Accounts & Permissions π€
| Name |
Details |
Pricing |
| Devise |
User authentication system. |
|
| OmniAuth |
External provider authentication. e.g. Connect with Google, Facebook, etc. |
|
| Pundit |
User authorization system. |
|
| Pretender |
Login as any user in the platform as an admin. |
|
| Name |
Details |
Pricing |
| FriendlyId |
Hide database row IDs and produce SEO friendly URLs. |
|
| PaperTrail |
Track changes to our records for auditing and versioning. |
|
| Paranoia |
Soft delete records. |
|
| AASM |
State machine. |
|
| Name |
Details |
Pricing |
| HAML |
HTML abstraction markup language to keep the code simple and indented like Ruby. |
|
| SASS |
Rails built-in support for CSS with superpowers. |
|
| Pagy |
Pagination. |
|
| Simple Form |
Form components & styling. |
|
| High Voltage |
Static pages. |
|
| MetaTags |
Page titles, descriptions and meta tags for SEO. |
|
| SitemapGenerator |
Generate sitemaps for search engines. |
|
| Gon |
Pass data as variables from backend to Javascript. |
|
| Hotwire: Turbo |
Speed of single-page web application. |
|
| Hotwire: Stimulus |
Modest JavaScript framework for HTML. |
|
Platform Administration π¨βπΌ
| Name |
Details |
Pricing |
| Rubocop |
Ruby static code analyzer and code formatter. Install auto-correct plugin in your code editor. |
|
| Deep Source |
Automated code review & static code analysis. Setup Rubycop, Breakman and other code review plugins for each PR. |
from $0/mo |
| Strong Migrations |
Catch unsafe migrations in development. |
|
| Bullet |
Improve app performance by reducing the number of queries it makes. |
|
| Name |
Details |
Pricing |
| RSpec |
Testing framework. |
|
| factory_bot |
Define model patters and strategies for testing. |
|
| Faker |
Mock test data. |
|
| Shoulda Matchers |
One-liner common Rails functionality tests helper. |
|
| Capybara |
User acceptance testing by simulating how real users would interact with our app. |
|
| GitHub Actions |
Continuous Integration (CI) setup for each PR. |
3,000 mins/mo included with GitHub subscription. |