An editorial guide to the Rails gem ecosystem

Every Rails application is, in large part, its Gemfile.

Gemfile Review looks at the libraries that end up there: what they do, who maintains them, how well they follow Rails releases, and what the sensible alternatives are.

Release numbers and dates come from RubyGems.org and each project's own repository. Every guide links to the primary documentation.

Raw purple-red ruby crystals embedded in white rock
Rubies before the cutting: most gems need a closer look before they go into a setting.

Where to begin

The choices most Rails teams face first, and two classics that still turn up in old Gemfiles.

An open handwritten account book from the 1770s, with dated entries and columns of figures, in a museum display caseCategory guides

Audit trails and versioning

PaperTrail, Audited or Logidze: a versions table, an audits table, or a trigger-maintained log in a JSONB column.

Black pencils with white erasers standing in a grey concrete pot on a deskCategory guides

Soft deletes

Discard adds a discarded_at column and two scopes; Paranoia and acts_as_paranoid override destroy. Which one, and when to skip soft deletes entirely.

Several bunches of old iron keys hanging from a hammered metal plateCategory guides

Authentication

Comparing Rails authentication options in 2026: the Rails 8 authentication generator, Devise, Rodauth, Authlogic, Clearance and Sorcery, plus OmniAuth for social login.

A curving roller conveyor in a factory hallCategory guides

Background jobs

How to choose a background job backend for Rails: Active Job, Solid Queue (the Rails 8 default), Sidekiq, GoodJob, delayed_job and Resque, and what replaced Workling and Spawn.

A white USB stick, a small black USB drive and three memory cards on a grey surfaceCategory guides

File uploads

Choosing a file attachment solution for Rails: Active Storage, Shrine and CarrierWave compared, image variants with image_processing, validation, and migrating away from Paperclip.

Glass test tubes in a metal rack, a few holding green, yellow and blue liquidsCategory guides

Testing

The Rails testing toolbox in 2026: Minitest or RSpec, fixtures or FactoryBot, system tests with Capybara, shoulda-matchers, and what replaced Webrat, Spork and factory_girl.

A tangle of silver paper clips filling the framePlugin histories

Paperclip

What Paperclip did, why thoughtbot deprecated it in 2018, the kt-paperclip fork, and how to migrate Paperclip attachments to Active Storage or Shrine.

A chrome mechanical stopwatch on a white backgroundPlugin histories

Spork

What Spork did for RSpec and Cucumber in the Rails 2 and 3 era, why it stopped at 1.0.0rc4, and how Spring, Bootsnap and parallel testing solve the same problem today.

The index

Every guide on the site, by section.

Guides

How Rails extensions work, and how to choose, audit and upgrade the gems in your Gemfile.

All guides

Category guides

The main gem choices for each job in a Rails application, compared on maintenance, design and fit.

All category guides

Plugin histories

What the well-known Rails 2 and Rails 3 era plugins did, where they stand today, and what replaced them.

All plugin histories