10 things I add to every Rails app

This page summarizes the projects mentioned and recommended in the original post on dev.to

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
  • devise_masquerade

    Extension for devise, enable login as functionality. Add link to the masquerade_path(resource) and use it.

  • Alongside this, devise_masquerade is a fantastic plugin to use with your admin area, allowing you to login as other users. This is helpful for debugging account specific issues etc.

  • letter_opener_web

    A web interface for browsing Ruby on Rails sent emails

  • This gem makes sure you don’t embarrasingly send emails to real users whilst developing or testing, life-saver!

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • postmark-rails

    Official integration library for using Rails and ActionMailer with the Postmark HTTP API

  • Postmark is a service I have been using for years! It’s really easy to integrate into Rails using their postmark-rails gem, plus the product is great, easy to use and very reliable.

  • rspec-rails

    RSpec for Rails 6+

  • For testing I use RSpec, along with shoulda-matchers for easily testing model relations & validations.

  • Sidekiq

    Simple, efficient background processing for Ruby

  • I often don’t set this up right away, but within the first week or two of development comes the time for background jobs. I like to stick with what I know and Sidekiq along with it’s web interface is easy to use and reliable.

  • Sentry

    Developer-first error tracking and performance monitoring

  • Next up is error monitoring with Sentry. Exceptions usually happen in production when real users get a hold of your code, and making sure these are tracked helps a ton in seeing what’s going on and fixing it!

  • metamagic

    Simple Ruby on Rails plugin for creating meta tags.

  • This one is a small, but very useful gem. It helps set page titles, meta keywords and even open graph tags for sharing on social sites. This is a must if you have a lot of publicly accessible pages and want to start doing some SEO.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • Rack::Attack

    Rack middleware for blocking & throttling

  • The final gem I like to include in all projects is rack-attack. This is a rate limiting tool which is great for throttling dangerous actions in your app to prevent bot attacks or other malicious users.

  • Administrate

    A Rails engine that helps you put together a super-flexible admin dashboard.

  • I usually tend to create these from Scratch, but moving forward I’ve started to use thoughtbot’s administrate gem. It sticks to the Rails conventions of controllers and routing, so it’s easy to customise and add new functionality to.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts