Sorted by download count
A toolkit of support libraries and Ruby core extensions extracted from the Rails framework. Rich support for multibyte strings, internationalization, time zones, and testing.
Ruby on Rails is a full-stack web framework optimized for programmer happiness and sustainable productivity. It encourages beautiful code by favoring convention over configuration.
Databases on Rails. Build a persistent domain model by mapping database tables to Ruby classes. Strong conventions for associations, validations, aggregations, migrations, and testing come baked-in.
A toolkit for building modeling frameworks like Active Record. Rich support for attributes, callbacks, validations, serialization, internationalization, and testing.
Rails internals: application bootup, plugins, generators, and rake tasks.
Web apps on Rails. Simple, battle-tested conventions for building and testing MVC web applications. Works with any Rack-compatible server.
Simple, battle-tested conventions and helpers for building web pages.
Email on Rails. Compose, deliver, and test emails using the familiar controller/view pattern. First-class support for multipart email and attachments.
Declare job classes that can be run by a variety of queuing backends.
RuboCop is a Ruby code style checking and code formatting tool. It aims to enforce the community-driven Ruby Style Guide.
Selenium implements the W3C WebDriver protocol to automate popular browsers. It aims to mimic the behaviour of a real user as it interacts with the application's HTML. It's primarily intended for web application testing, but any web-based task can automated.
Rack provides a minimal, modular and adaptable interface for developing web applications in Ruby. By wrapping HTTP requests and responses in the simplest way possible, it unifies and distills the API for web servers, web frameworks, and software in between (the so-called middleware) into a single method call.
Sinatra is a DSL for quickly creating web applications in Ruby with minimal effort.
Capybara is an integration testing tool for rack based web applications. It simulates how a user would interact with a website
Flexible authentication solution for Rails with Warden
Puma is a simple, fast, threaded, and highly parallel HTTP 1.1 server for Ruby/Rack applications. Puma is intended for use in both development and production environments. It's great for highly parallel Ruby implementations such as Rubinius and JRuby as well as as providing process worker support to support CRuby well.
Erubis is an implementation of eRuby and has the following features: * Very fast, almost three times faster than ERB and about 10% faster than eruby. * Multi-language support (Ruby/PHP/C/Java/Scheme/Perl/Javascript) * Auto escaping support * Auto trimming spaces around '<% %>' * Embedded pattern changeable (default '<% %>') * Enable to handle Processing Instructions (PI) as embedded pattern (ex. '<?rb ... ?>') * Context object available and easy to combine eRuby template with YAML datafile * Print statement available * Easy to extend and customize in subclass * Ruby on Rails support
Attach cloud and local files in Rails applications.
factory_bot provides a framework and DSL for defining and using factories - less error-prone, more explicit, and all-around easier to work with than fixtures.
Nokogiri (鋸) makes it easy and painless to work with XML and HTML from Ruby. It provides a sensible, easy-to-understand API for reading, writing, modifying, and querying documents. It is fast and standards-compliant by relying on native parsers like libxml2, libgumbo, or xerces.
HTTP/REST API client library.
Bundler manages an application's dependencies through its entire life, across many machines, systematically and repeatably
Simple wrapper for the GitHub API
Simple, efficient background processing for Ruby.
Faker, a port of Data::Faker from Perl, is used to easily generate fake data: names, addresses, phone numbers, etc.
Provides API clients for AWS. This gem is part of the official AWS SDK for Ruby.
A simple HTTP and REST client for Ruby, inspired by the Sinatra microframework style of specifying actions: get, put, post, delete.
Upload files in your Ruby applications, map them to a range of ORMs, store them on different backends.
Protect against typical web attacks, works with all Rack apps, including Rails
Amazon Web Services Signature Version 4 signing library. Generates sigv4 signature for HTTP requests.
Protocol Buffers are Google's data interchange format.
Official AWS Ruby gem for Amazon Simple Storage Service (Amazon S3). This gem is part of the AWS SDK for Ruby.
rspec-rails integrates the Rails testing helpers into RSpec.
A really Ruby Mail handler.
A Ruby client that tries to match Redis' API one-to-one, while still providing an idiomatic interface.
A generalized Rack framework for multiple-provider authentication.
Kaminari is a Scope & Engine based, clean, powerful, agnostic, customizable and sophisticated paginator for Rails 4+
Makes http fun! Also, makes consuming restful web services dead easy.
Structure many real-time application concerns into channels over a single WebSocket connection.
A secure, non-evaling end user template engine with aesthetic markup.
Jekyll is a simple, blog aware, static site generator.
The easiest way to automate beta deployments and releases for your iOS and Android apps
Send RPCs from Ruby using GRPC
Helps creating valid Guard plugins and testing them
A set of common locale data and translations to internationalize and/or localize your Rails applications.
Collection of useful Sinatra extensions
Fluentd is an open source data collector designed to scale and simplify log management. It can collect, process and ship many kinds of data in near real-time.
A plain-Ruby implementation of GraphQL.
Pry is a runtime developer console and IRB alternative with powerful introspection capabilities. Pry aims to be more than an IRB replacement. It is an attempt to bring REPL driven programming to the Ruby language.
EventMachine implements a fast, single-threaded engine for arbitrary network communications. It's extremely easy to use in Ruby. EventMachine wraps all interactions with IP sockets, allowing programs to concentrate on the implementation of network protocols. It can be used to create both network servers and clients. To create a server or client, a Ruby program only needs to specify the IP address and port, and provide a Module that implements the communications protocol. Implementations of several standard network protocols are provided with the package, primarily to serve as examples. The real goal of EventMachine is to enable programs to easily interface with other programs using TCP/IP, especially if custom protocols are required.