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.
The Database Toolkit for Ruby
Strategies for cleaning databases. Can be used to ensure a clean slate for testing.
Official AWS Ruby gem for Amazon Relational Database Service (Amazon RDS). This gem is part of the AWS SDK for Ruby.
Hirb provides a mini view framework for console applications and uses it to improve ripl(irb)'s default inspect output. Given an object or array of objects, hirb renders a view based on the object's class and/or ancestry. Hirb offers reusable views in the form of helper classes. The two main helpers, Hirb::Helpers::Table and Hirb::Helpers::Tree, provide several options for generating ascii tables and trees. Using Hirb::Helpers::AutoTable, hirb has useful default views for at least ten popular database gems i.e. Rails' ActiveRecord::Base. Other than views, hirb offers a smart pager and a console menu. The smart pager only pages when the output exceeds the current screen size. The menu is used in conjunction with tables to offer two dimensional menus.
Annotates Rails/ActiveRecord Models, routes, fixtures, and others based on the database schema.
Arel Really Exasperates Logicians Arel is a SQL AST manager for Ruby. It 1. Simplifies the generation of complex SQL queries 2. Adapts to various RDBMSes It is intended to be a framework framework; that is, you can build your own ORM with it, focusing on innovative object and collection modeling as opposed to database compatibility and query generation.
A pure-Ruby driver for connecting to, querying, and manipulating MongoDB databases. Officially developed and supported by MongoDB, with love for the Ruby community.
This "acts_as" extension provides the capabilities for sorting and reordering a number of objects in a list. The class that has this specified needs to have a "position" column defined as an integer on the mapped database table.
Ruby library to interface with the SQLite3 database engine (http://www.sqlite.org). Precompiled binaries are available for common platforms for recent versions of Ruby.
Fast mime detection by extension or content (Uses freedesktop.org.xml shared-mime-info database)
Official AWS Ruby gem for AWS Database Migration Service. This gem is part of the AWS SDK for Ruby.
Strategies for cleaning databases. Can be used to ensure a clean slate for testing.
Adds methods to ActiveRecord::Migration to create and manage database views in Rails
Shrine is a toolkit for file attachments in Ruby applications. It supports uploading, downloading, processing and deleting IO objects, backed by various storage engines. It uses efficient streaming for low memory usage. Shrine comes with a high-level interface for attaching uploaded files to database records, saving their location and metadata to a database column, and tying them to record's lifecycle. It natively supports background jobs and direct uploads for fully asynchronous user experience.
This module allows Ruby programs to interface with the SQLite3 database engine (http://www.sqlite.org). You must have the SQLite engine installed in order to build this module. Note that this module is NOT compatible with SQLite 2.x.
Seed Fu is an attempt to once and for all solve the problem of inserting and maintaining seed data in a database. It uses a variety of techniques gathered from various places around the web and combines them to create what is hopefully the most robust seed data system around.
AR-JDBC is a database adapter for Rails' ActiveRecord component designed to be used with JRuby built upon Java's JDBC API for database access. Provides (ActiveRecord) built-in adapters: MySQL, PostgreSQL and SQLite3 as well as adapters for popular databases such as Oracle, SQLServer, DB2, FireBird and even Java (embed) databases: Derby, HSQLDB and H2. It allows to connect to virtually any JDBC-compliant database with your JRuby on Rails application.
The best solution for store global settings in Rails applications. This gem will managing a table of а global key, value pairs easy. Think of it like a global Hash stored in your database, that uses simple ActiveRecord like methods for manipulation. Keep track of any global setting that you dont want to hard code into your rails app. You can store any kind of object. Strings, numbers, arrays, or any object.
Backup is a RubyGem, written for UNIX-like operating systems, that allows you to easily perform backup operations on both your remote and local environments. It provides you with an elegant DSL in Ruby for modeling your backups. Backup has built-in support for various databases, storage protocols/services, syncers, compressors, encryptors and notifiers which you can mix and match. It was built with modularity, extensibility and simplicity in mind.
A database backend that translates database interactions into no-ops. Using NullDB enables you to test your model business logic - including after_save hooks - without ever touching a real database.
NOTICE: This gem has been renamed to `datadog` since 2.0.0. Please use `datadog` instead of `ddtrace`. ddtrace is Datadog's tracing client for Ruby. It is used to trace requests as they flow across web servers, databases and microservices so that developers have great visiblity into bottlenecks and troublesome requests.
This package provides the Ruby driver library for the RethinkDB database server.
GeoIP searches a GeoIP database for a given host or IP address, and returns information about the country where the IP address is allocated, and the city, ISP and other information, if you have that database version.
Apartment allows Rack applications to deal with database multitenancy through ActiveRecord
Precise and fast user agent parser and device detector, backed by the largest and most up-to-date agent and device database
Ohm is a library that allows to store an object in Redis, a persistent key-value database. It has very good performance.
YamlDb is a database-independent format for dumping and restoring data. It complements the database-independent schema format found in db/schema.rb. The data is saved into db/data.yml. This can be used as a replacement for mysqldump or pg_dump, but only for the databases typically used by Rails apps. Users, permissions, schemas, triggers, and other advanced database features are not supported - by design. Any database that has an ActiveRecord adapter should work.
A simple database agnostic import/export app to transfer data to/from a remote database.
TZInfo::Data contains data from the IANA Time Zone database packaged as Ruby modules for use with TZInfo.
Oracle "enhanced" ActiveRecord adapter contains useful additional methods for working with new and legacy Oracle databases. This adapter is superset of original ActiveRecord Oracle adapter.
A minimalist's tiny and ultra-fast database cleaner for Active Record
A vendor independent interface for accessing databases, similar to Perl's DBI
Adds simple rake commands for seeding your database. Simple dependencies let you organise your seeds. If you are using Rails, Seedbank extends Rails seeds and lets you add seeds for each environment.
Dump (parts) of your database to db/seeds.rb to get a headstart creating a meaningful seeds.rb file
Use hashids when you do not want to expose your database ids to the user.
Ruby Reports is a software library that aims to make the task of reporting less tedious and painful. It provides tools for data acquisition, database interaction, formatting, and parsing/munging.
RSpec matchers for database queries
Request log analyzer's purpose is to find out how your web application is being used, how it performs and to focus your optimization efforts. This tool will parse all requests in the application's log file and aggregate the information. Once it is finished parsing the log file(s), it will show the requests that take op most server time using various metrics. It can also insert all parsed request information into a database so you can roll your own analysis. It supports Rails-, Merb- and Rack-based applications logs, Apache and Amazon S3 access logs and MySQL slow query logs out of the box, but file formats of other applications can easily be supported by supplying an easy to write log file format definition.
A simple, comprehensive Ruby gem for parsing user agent strings with the help of BrowserScope's UserAgent database
queue_classic is a queueing library for Ruby apps. (Rails, Sinatra, Etc...) queue_classic features asynchronous job polling, database maintained locks and no ridiculous dependencies. As a matter of fact, queue_classic only requires pg.
This gem allows you to use sharded databases with ActiveRecord. This also provides a interface for replication and for running migrations with multiples shards.
A pure Ruby interface to the PostgreSQL (>= 7.4) database
Strategies for cleaning databases using ActiveRecord. Can be used to ensure a clean state for testing.
A small fast library for reading dBase, xBase, Clipper and FoxPro database files.
GlobalPhone parses, validates, and formats local and international phone numbers according to the E.164 standard using the rules specified in Google's libphonenumber database.
riak-client is a rich client for Riak, the distributed database by Basho. It supports the full HTTP and Protocol Buffers interfaces including storage operations, bucket configuration, link-walking, secondary indexes and map-reduce.
I18n ActiveRecord backend. Allows to store translations in a database using ActiveRecord, e.g. for providing a web-interface for managing translations.
A Ruby client for the Cassandra distributed database.
Useful to make forms and validations. It uses MaxMind database.