Skip to content
88

Awesome Ruby

šŸ’Ž A collection of awesome Ruby libraries, tools, frameworks and software

14k stars1,768 forks964 entriesLast push Sep 22, 2026 (7 days ago)License none

This page lists names, links and short descriptions. The original list on GitHub is the source and belongs to its authors.

Admin Interface

ActiveAdmin

A Ruby on Rails framework for creating elegant backends for website administration.

In 2 lists

ActiveScaffold

ActiveScaffold provides quick and powerful user interfaces for CRUD (create, read, update, delete) operations for Rails applications. It's excellent for generating admin interfaces, managing Data-Heavy Applications, creating Widgets or for quick prototyping. ActiveScaffold is completly…

Administrate

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

In 2 lists

Avo Admin for Rails

Avo is the modern approach to building an advanced admin panel that can be used by the entire organization. It has all the tools an admin panel needs and more. We have carefully made sure that you have all the escape hatches you need to ensure you can build your next admin panel for Ruby on Rails…

bhf

A simple to use Rails-Engine-Gem that offers an admin interface for trusted user.

Hot Glue

Hot Glue takes a different approach to building both admin and user dashboards. It is a code generation tool like the Rails scaffold generator but with significantly more features. Instead of providing a lot of configuration options, Hot Glue can generate your code. Good for lists & CRUD views for…

Madmin

A robust Admin Interface for Ruby on Rails apps

MotorAdmin

A low-code Admin panel and Business Intelligence Rails engine. No DSL - configurable from the UI.

RailsAdmin

A Rails engine that provides an easy-to-use interface for managing your data.

In 2 lists

Trestle

A modern, responsive admin framework for Rails. Build a back-end in minutes that will grow with the needs of your application.

In 2 lists

AI and LLMs

anthropic-sdk-ruby

The official Ruby SDK for the Anthropic API, for building applications with Claude.

In 2 lists

langchain.rb

Library for building LLM-powered applications in Ruby.

In 3 lists

openai-ruby

The official Ruby SDK for the OpenAI API.

In 2 lists

RubyLLM

A delightful Ruby way to work with AI, providing one unified interface to OpenAI, Anthropic, Gemini, and other LLM providers.

In 4 listsDetails

ruby-openai

OpenAI API + Ruby!

In 5 listsDetails

ruby-sdk

The official Ruby SDK for the Model Context Protocol (MCP), for building MCP servers and clients.

tidewave

MCP server for better agentic Rails development, runtime-level tools for your agent to talk to your running app.

In 2 lists

Analytics

ActiveAnalytics

First-party, privacy-focused traffic analytics for Ruby on Rails applications.

Ahoy

A solid foundation to track visits and events in Ruby, JavaScript, and native apps.

In 2 lists

Impressionist

Rails Plugin that tracks impressions and page views.

In 2 lists

Legato

Model analytics reports and queries against the official Google Analytics Reporting API.

Rack::Tracker

Rack middleware that can be hooked up to multiple services and exposing them in a unified fashion.

Staccato

Track analytics into the official Google Analytics Collection API.

API Builder and Discovery

ActiveModel::Serializers

JSON serialization of objects.

In 2 lists

Acts_As_Api

Easy And Fun, in creating XML/JSON responses in Rails 3,4,5 and 6.

Alba

A JSON serializer for Ruby, JRuby and TruffleRuby.

In 2 lists

Blanket

A dead simple API wrapper.

Blueprinter

Simple, Fast, and Declarative Serialization Library for Ruby.

cache_crispies

Speedy Rails JSON serialization with built-in caching.

Crepe

The thin API stack.

EasyTalk

Define structured data models with a DSL that generates JSON Schema and ActiveModel validations from a single source of truth.

Grape

An opinionated micro-framework for creating REST-like APIs in Ruby.

Her

an ORM that maps REST resources to Ruby objects. Designed to build applications that are powered by a RESTful API instead of a database.

jbuilder

Create JSON structures via a Builder-style DSL.

In 2 lists

jsonapi-rb

Efficient and convenient JSON API (de)serialization library.

jsonapi-serializer

A fast JSON:API serializer for Ruby Objects.

JSONAPI::Resources

JSONAPI::Resources, or "JR", provides a framework for developing a server that complies with the JSON API specification.

JSONAPI::Utils

JSONAPI::Utils is built on top of JSONAPI::Resources taking advantage of its resource-driven style and bringing an easy way to build modern JSON APIs with no or less learning curve.

Jsonite

A tiny, HAL-compliant JSON presenter for your APIs.

Pliny

Opinionated template Sinatra app for writing excellent APIs in Ruby.

In 2 lists

rabl

General ruby templating with json, bson, xml, plist and msgpack support.

In 3 lists

Roar

Resource-Oriented Architectures in Ruby.

Spyke

Interact with REST services in an ActiveRecord-like manner.

In 3 lists

Version Cake

An unobtrusive way to version APIs in your Rails app.

Assets

Asset Sync

Synchronises Assets between Rails and S3.

Autoprefixer

Parse CSS and add vendor prefixes to rules by Can I Use.

In 3 lists

Bundlebun

bundles Bun, the all-in-one JavaScript runtime, package manager, and build tool, directly into your Ruby gem bundle.

Emoji

Exposes the Phantom Open Emoji library unicode/image assets and APIs for working with them.

In 2 lists

Less Rails

The dynamic stylesheet language for the Rails asset pipeline.

In 2 lists

Rails Assets

Bundler to Bower proxy.

Sass

Sass makes CSS fun again.

In 3 lists

Shakapacker

Use Webpack to manage app-like JavaScript modules in Rails. (Official and actively maintained successor to rails/webpacker)

In 2 lists

Sprockets

Rack-based asset packaging system.

In 2 lists

Torba

Bower-less bundler for Sprockets.

Vite Ruby

Use Vite.js as a modern assets pipeline in Ruby and Rails apps.

In 2 lists

Authentication and OAuth

API Guard

JWT authentication solution for Rails APIs.

Authentication Zero

An authentication system generator for Rails applications.

Authlogic

Authlogic is a clean, simple, and unobtrusive ruby authentication solution.

In 2 lists

Clearance

Small and simple email & password based authentication for Rails.

In 2 lists

Devise

A flexible authentication solution for Rails based on Warden.

In 3 lists

JWT

JSON Web Token implementation in Ruby.

Oath

A very simple and extensible user authentication library for rails (formerly Monban).

OmniAuth

A library that standardizes multi-provider authentication utilizing Rack middleware.

Rodauth

Authentication and account management framework for Rack applications.

Sorcery

A stripped-down, bare-bones authentication library for Rails.

In 2 lists

warden

General Rack Authentication Framework.

Doorkeeper

An OAuth2 provider for Rails.

In 2 lists

OAuth2

A Ruby wrapper for the OAuth 2.0 protocol.

Rodauth-Oauth

A rodauth OAuth and OpenID provider plugin.

Authorization

acl9

Acl9 is a role-based authorization system that provides a concise DSL for securing your Rails application.

In 2 lists

AccessGranted

Multi-role and whitelist based authorization gem for Rails.

ActionPolicy

Authorization framework for Ruby and Rails applications. Composable, extensible and performant.

In 2 lists

CanCanCan

Continuation of CanCan, an authorization Gem for Ruby on Rails.

In 4 listsDetails

Consul

A scope-based authorization solution for Ruby on Rails.

Petergate

Easy to use and read action and content based authorizations.

Pundit

Minimal authorization through OO design and pure Ruby classes.

Rabarber

Simple role-based authorization for Rails with multi-tenancy support.

In 2 lists

Automation

ActiveWorkflow

An intelligent process and workflow automation platform based on software agents.

In 4 listsDetails

Danger

Automate your team's conventions surrounding code review.

Huginn

Huginn is a system for building agents that perform automated tasks for you online.

In 6 listsDetails

Neovim

Ruby bindings for Neovim to make your own neovim editor plugins in Ruby.

Runbook

A framework and Ruby DSL for progressive system automation.

Breadcrumbs

Breadcrumbs on Rails

A simple Ruby on Rails plugin for creating and managing a breadcrumb navigation for a Rails project.

In 2 lists

Gretel

A Ruby on Rails plugin that makes it easy yet flexible to create breadcrumbs.

loaf

Manages and displays breadcrumb trails in Rails app - lean & mean.

Simple Navigation

A ruby gem for creating navigation (html list, link list or breadcrumbs with multiple levels) for your Rails 2, 3 & 4, Sinatra or Padrino.

Boilerplates & UI Kits

Jumpstart

The Ruby on Rails SaaS template to save you months of development time.

Rails Blocks

Delightful UI components for your Rails app that use Tailwind CSS & Stimulus controllers.

In 3 lists

Speedrail

A free Rails 8 app template: Devise auth, Stripe billing, Tailwind CSS, admin panel, SEO helpers, etc.

Wheel

Rails application template to build Rails applications faster.

Business logic

ActiveInteraction

Manage application specific business logic.

Dentaku

A parser and evaluator for mathematical and logical formulas, safely evaluating user-supplied expressions at runtime.

Interactor

Interactor provides a common interface for performing complex interactions in a single request.

Light Service

Series of Actions with an emphasis on simplicity.

Mutations

Compose your business logic into commands that sanitize and validate input.

Servactory

A set of tools for building reliable service objects of any complexity.

Stoplight

A circuit breaker implementation for Ruby that prevents cascading failures when external dependencies (databases, APIs, third-party services) start failing.

Surrounded

Encapsulated related objects in a single system to add behavior during runtime. Extensible implementation of DCI.

Waterfall

A slice of functional programming to chain ruby services and blocks, thus providing a new approach to flow control.

wisper

A micro library providing Ruby objects with Publish-Subscribe capabilities.

Caching

Action caching for Action Pack

Action caching for Action Pack.

Dalli

A high performance pure Ruby client for accessing memcached servers.

Garner

A set of Rack middleware and cache helpers that implement various caching strategies.

IdentityCache

A blob level caching solution to plug into ActiveRecord.

Record Cache

Cache Active Model Records in Rails 3.

redis-store

Redis Store provides a full set of stores (Cache, I18n, Session, HTTP Cache) for modern Ruby frameworks like: Ruby on Rails, Sinatra, Rack, Rack::Cache and I18n. It supports object marshalling, timeouts, single or multiple nodes, and namespaces.

Second Level Cache

Write-Through and Read-Through caching library for ActiveRecord 4.

Captchas and anti-spam

ActsAsTextcaptcha

Protection for Rails models with text-based logic question captchas (from Rob Tuley's textcaptcha.com)

Invisible Captcha

Unobtrusive and flexible spam protection based on the honeypot strategy. It also provides a time-sensitive form submission.

Rakismet

Easy Akismet and TypePad AntiSpam integration for Rails.

reCAPTCHA

reCaptcha API helpers for ruby apps.

In 2 lists

Voight-Kampff

A Ruby gem that detects bots, spiders, crawlers and replicants.

CLI Builder

Clamp

A command-line application framework.

In 2 lists

cmdparse

An advanced command line parser supporting nested commands.

Commander

The complete solution for Ruby command-line executables.

In 2 lists

dry-cli

General purpose Command Line Interface (CLI) framework for Ruby.

In 2 lists

GLI

Git-Like Interface Command Line Parser.

In 2 lists

Main

A class factory and DSL for generating command line programs real quick.

Optimist

A commandline option parser for Ruby that just gets out of your way.

Rake

A make-like build utility for Ruby.

Runfile

Build command line applications per project with ease. Rake-inspired, Docopt inside.

Slop

Simple Lightweight Option Parsing.

Terrapin

A small command line library (Formerly Cocaine).

Thor

A toolkit for building powerful command-line interfaces.

TTY

Toolbox for developing CLI clients.

In 2 lists

CLI Utilities

Awesome Print

Pretty print your Ruby objects with style -- in full color and with proper indentation

In 3 lists

Betty

Friendly English-like interface for your command line. Don't remember a command? Ask Betty.

colorize

Extends String class or add a ColorizedString with methods to set text color, background color and text effects.

In 2 lists

colorls

Beautifies the ls command, with color and font-awesome icons.

In 5 listsDetails

formatador

STDOUT text formatting.

Paint

Simple and fast way to set ANSI terminal colors.

Pastel

Terminal output styling with intuitive and clean API.

Ru

Ruby in your shell.

Ruby/Progressbar

The most flexible text progress bar library for Ruby.

Tabulo

Plain text table generator with a DRY, column-based API.

TablePrint

Slice your data from multiple DB tables into a single CLI view.

Terminal Table

Ruby ASCII Table Generator, simple and feature rich.

Tmuxinator

Create and manage complex tmux sessions easily.

In 3 lists

Whirly

A simple, colorful and customizable terminal spinner library for Ruby.

Cloud

AWS SDK for Ruby

The official AWS SDK for Ruby.

In 3 lists

browse-everything

Multi-provider Rails engine providing access to files in cloud storage.

Fog

The Ruby cloud services library.

In 2 lists

humidifier

Programmatically generate and manage AWS CloudFormation templates, stacks, and change sets.

CMS

Alchemy CMS

A powerful, userfriendly and flexible Open Source Rails CMS.

Avo CMS for Rails

Avo is a very custom Content Management System for Ruby on Rails that saves engineers and teams months of development time. It's designed to use your app's database structure, uses configuration instead of traditional methods, and when configuration isn't enough, it falls back to writing regular…

Camaleon CMS

A dynamic and advanced content management system based on Ruby on Rails 4.

Comfy Middle Seat

Powerful Rails 7.2+ CMS Engine, and the active successor to ComfortableMexicanSofa.

Fae

Flexible, open source, Rails CMS engine.

In 2 lists

MaglevCMS

An open source page builder with an sleek UI.

LocomotiveCMS

A simple but powerful CMS based on Liquid templates and Mongodb database.

Publify

A self hosted Web publishing platform on Rails.

In 3 lists

Refinery CMS

An open source Ruby on Rails content management system for Rails 5.2+.

Sitepress

Manage content files in Rails with the same features you'd expect from static site generators like Jekyll, Middleman, and Bridgetown.

Spina CMS

A beautiful CMS for Rails developers.

Storytime

Rails 4+ CMS and blogging engine, with a core focus on content.

Code Analysis and Metrics

Brakeman

A static analysis security vulnerability scanner for Ruby on Rails applications.

In 6 listsDetails

Coverband

Rack middleware to help measure production code coverage.

In 2 lists

Fasterer

Make your Rubies go faster with this command line tool highly inspired by fast-ruby and Sferik's talk at Baruco Conf.

Flay

Flay analyzes code for structural similarities. Differences in literal values, variable, class, method names, whitespace, programming style, braces vs do/end, etc are all ignored. Making this totally rad.

Flog

Flog reports the most tortured code in an easy to read pain report. The higher the score, the more pain the code is in.

fukuzatsu

Complexity analysis tool with a rich web front-end.

MetricFu

A fist full of code metrics.

In 2 lists

Pippi

A utility for finding suboptimal Ruby class API usage, focused on runtime analysis.

Pronto

Quick automated code review of your changes.

In 2 lists

rails_best_practices

A code metric tool for rails projects.

Reek

Code smell detector for Ruby.

In 3 lists

Rubycritic

A Ruby code quality reporter.

In 3 lists

rubydex

A high-performance static analysis suite for Ruby, built in Rust with Ruby APIs.

Scientist

A Ruby library for carefully refactoring critical paths.

SimpleCov

Code coverage for Ruby 1.9+ with a powerful configuration library and automatic merging of coverage across test suites.

Suture

A Ruby gem that helps you refactor your legacy code.

Traceroute

A Rake task gem that helps you find the dead routes and actions for your Rails 3+ app

Code Formatting

niceql

A dependentless SQL and SQL errors formatting and colorizing. ActiveRecord seemless integration.

prettier

A prettier plugin for the Ruby language.

RuboCop

A static code analyzer, based on the community Ruby style guide.

Rubocop Rails

A RuboCop extension focused on enforcing Rails best practices and coding conventions.

In 2 lists

Rubocop Rspec

Code style checking for RSpec files

Rubocop Performance

A RuboCop extension focused on code performance checks.

Standard

Ruby Style Guide, with linter & automatic code fixer

Code Highlighting

CodeRay

Fast and easy syntax highlighting for selected languages.

pygments.rb

A Ruby wrapper for the Python pygments syntax highlighter.

Rouge

A pure Ruby code highlighter that is compatible with Pygments.

Code Loaders

Zeitwerk

An efficient and thread-safe Ruby code loader.

In 2 lists

Coding Style Guides

Best-Ruby

Ruby Tricks, Idiomatic Ruby, Refactoring & Best Practices.

fast-ruby

Writing Fast Ruby. Collect Common Ruby idioms.

Fundamental Ruby

Fundamental programming ruby with examples. Threads, design patterns, data structures, OOP SOLID principle, algorithms.

Rails style guide

Community-driven Rails best practices and style for Rails 3 and 4.

In 2 lists

RSpec style guide

Better Specs { rspec guidelines with ruby }.

Ruby style guide

Community-driven Ruby coding style.

In 3 lists

Concurrency and Parallelism

Concurrent Ruby

Modern concurrency tools including agents, futures, promises, thread pools, supervisors, and more. Inspired by Erlang, Clojure, Scala, Go, Java, JavaScript, and classic concurrency patterns.

EventMachine

An event-driven I/O and lightweight concurrency library for Ruby.

In 3 lists

forkoff

brain-dead simple parallel processing for ruby.

Parallel

Run any code in parallel Processes (> use all CPUs) or Threads (> speedup blocking operations). Best suited for map-reduce or e.g. parallel downloads/uploads.

In 4 listsDetails

Polyphony

Fine-grained concurrency for Ruby.

Configuration

AnywayConfig

Configuration library for Ruby gems and applications, supporting multiple sources (yml, secrets) and environments.

Chamber

Surprisingly customizable convention-based approach to managing your app's configuration.

In 2 lists

Configatron

Simple and feature rich configuration system for Ruby apps.

Configus

Helps you easily manage environment specific settings.

dotenv

Loads environment variables from .env.

In 4 listsDetails

Econfig

Flexible configuration for Rails applications.

ENVied

ensure presence and type of your app's ENV-variables

Envyable

The simplest YAML to ENV config loader.

Figaro

Simple, Heroku-friendly Rails app configuration using ENV and a single YAML file.

In 3 lists

Global

Provides accessor methods for your configuration data.

RailsConfig

Multi-environment yaml settings for Rails3.

Sail

A lightweight Rails engine that brings an admin panel for managing configuration settings on a live Rails app.

Core Extensions

ActiveSupport

A collection of utility classes and standard library extensions.

In 8 listsDetails

Addressable

Addressable is a replacement for the URI implementation that is part of Ruby's standard library. It more closely conforms to RFC 3986, RFC 3987, and RFC 6570 (level 4), providing support for IRIs and URI templates.

Bitwise

Fast, memory efficient bitwise operations on large binary strings

Finishing Moves

Small, focused, incredibly useful methods added to core Ruby classes. Includes the endlessly useful nil_chain.

Docile

A tiny library that lets you map a DSL (domain specific language) to your Ruby objects in a snap.

dry-rb

dry-rb is a collection of next-generation Ruby libraries, each intended to encapsulate a common task.

Hamster

Efficient, immutable, and thread-safe collection classes for Ruby.

Hanami::Utils

Lightweight, non-monkey-patch class utilities for Hanami and Ruby app.

MemoWise

Memoize any instance/class/module method, including support for frozen objects - rigorously tested and benchmarked on all Rubies - fast performance of memoized reads.

Ruby Facets

The premiere collection of general purpose method extensions and standard additions for Ruby.

Trick Bag

Assorted Ruby classes and methods to simplify and enhance your code.

ActiveAttr

What ActiveModel left out.

Virtus

Attributes on Steroids for Plain Old Ruby Objects.

AttrExtras

Takes some boilerplate out of Ruby with methods like attr_initialize.

Hashie

A collection of tools that extend Hashes and make them more useful.

string_pattern

Generate strings supplying a simple pattern.

Country Data

Carmen

A repository of geographic regions.

Countries

All sorts of useful information about every country packaged as pretty little country objects.

i18n_data

country/language names and 2-letter-code pairs, in 85 languages, for country/language i18n.

normalize_country

Convert country names and codes to a standard, includes a conversion program for XMLs, CSVs and DBs.

In 2 lists

Phonelib

Ruby gem for phone validation and formatting using Google libphonenumber library data.

Phony

Fast international phone number (E164 standard) normalizing, splitting and formatting.

validates_zipcode

Postal code / zipcode validation for Rails, supporting 233 country codes.

CRM

Fat Free CRM

An open source Ruby on Rails based customer relationship management platform.

In 2 lists

Hitobito

An open source Ruby on Rails based community management solution.

In 2 lists

Cryptocurrencies and Blockchains

Blockchain Lite

Build your own blockchains with crypto hashes; revolutionize the world with blockchains, blockchains, blockchains one block at a time.

Ciri

Ruby implementation of Ethereum.

MoneyTree

A Ruby implementation of Bitcoin HD Wallets (Hierarchical Deterministic) BIP32.

Peatio

Most Advanced Cryptocurrency open-source assets exchange.

Dashboards

Blazer

Simple data viewer using only SQL. Output to table, chart, and maps.

In 3 lists

Smashing

Smashing is a Sinatra based framework that lets you build beautiful dashboards. This project is the maintained spiritual successor to the Dashing framework.

In 2 lists

Dashing-Rails

The exceptionally handsome dashboard framework for Rails.

Data Processing and ETL

attr-gather

A gem for creating workflows that "enhance" entities with extra attributes. At a high level, attr-gather provides a process to fetch information from many data sources (such as third party APIs, legacy databases, etc.) in a fully parallelized fashion.

smarter_csv

Fast Ingestion of CSV files into hashes with automatic header handling, type conversion, clean-up, and protection against Ruby CSV's silent data corruption. Also exports CSV.

CSV Reader

A modern tabular data (line-by-line records) reader supports "classic" CSV but also CSV Numerics, CSV <3 JSON, CSV <3 YAML, tab, space or fixed width fields (FWF) and many more flavors and dialects.

json-streamer

Stream JSON data based on various criteria (key, nesting level, etc).

Kiba

A lightweight data processing / ETL framework for Ruby.

In 2 lists

Multiwoven

The open-source reverse ETL, data activation platform developed using Ruby and Ruby on Rails.

In 4 listsDetails

ruby-stemmer

It Provides Snowball algorithm for stemming purposes.

In 3 lists

Data Visualization

Chartkick

Create beautiful Javascript charts with one line of Ruby.

GeoPattern

Create beautiful generative geometric background images from a string.

LazyHighCharts

A simple and extremely flexible way to use HighCharts from ruby code. Tested on Ruby on Rails, Sinatra and Nanoc, but it should work with others too.

ApexCharts.rb

Awesome charts for your ruby app. Works on any ruby app, including Rails app. It even works on plain HTML+ERB files.

RailRoady

Ruby on Rails 3/4 model and controller UML class diagram generator.

Rails Erd

Generate Entity-Relationship Diagrams for Rails applications.

In 3 lists

Ruby/GraphViz

Ruby interface to the GraphViz graphing tool.

Database Drivers

Cassandra Driver

A pure ruby driver for Apache Cassandra with asynchronous io and configurable load balancing, reconnection and retry policies.

mongo-ruby-driver

MongoDB Ruby driver.

In 2 lists

mysql2

A modern, simple and very fast Mysql library for Ruby (binding to libmysql).

In 2 lists

Neography

A thin Ruby wrapper to the Neo4j Rest API.

In 2 lists

Redic

Lightweight Redis Client.

redis-rb

A Ruby client that tries to match Redis' API one-to-one, while still providing an idiomatic interface.

ruby-pg

Ruby interface to PostgreSQL 8.3 and later.

In 2 lists

SQLite3

Ruby bindings for the SQLite3 embedded database.

SQL Server

The SQL Server adapter for ActiveRecord.

In 3 lists

TinyTDS

FreeTDS bindings for Ruby using DB-Library.

Trilogy

A performance-oriented C library for MySQL-compatible databases.

In 2 lists

Database Tools

connection_pool

Generic connection pooling for Ruby, that can be used with anything, e.g. Redis, Dalli, etc.

Database Cleaner

Database Cleaner is a set of strategies for cleaning your database in Ruby.

In 2 lists

Database Consistency

An easy way to check that application constraints and database constraints are in sync.

In 2 lists

Large Hadron Migrator

Online MySQL schema migrations without locking the table.

Lol DBA

Scan your models and displays a list of columns that probably should be indexed.

Online Migrations

Catch unsafe PostgreSQL migrations in development and run them easier in production.

Polo

Creates sample database snapshots to work with real world data in development.

PgHero

Postgres insights made easy.

In 2 lists

Rails DB

Database Viewer and SQL Query Runner.

In 2 lists

Rein

Database constraints made easy for ActiveRecord.

Scenic

Versioned database views for Rails.

In 2 lists

SchemaPlus

SchemaPlus provides a collection of enhancements and extensions to ActiveRecord

SecondBase

Seamless second database integration for Rails. SecondBase provides support for Rails to manage dual databases by extending ActiveRecord tasks that create, migrate, and test your application.

Seedbank

Seedbank allows you to structure your Rails seed data instead of having it all dumped into one large file.

Seed dump

Rails 4 task to dump (parts) of your database to db/seeds.rb.

Seed Fu

Advanced seed data handling for Rails.

Standby

Read from standby databases for ActiveRecord (formerly Slavery).

Strong Migrations

Catch unsafe migrations in development.

Upsert

Upsert on MySQL, PostgreSQL, and SQLite3. Transparently creates functions (UDF) for MySQL and PostgreSQL; on SQLite3, uses INSERT OR IGNORE.

Date and Time Processing

biz

Time calculations using business hours.

business_time

Support for doing time math in business hours and days.

ByStar

Find ActiveRecord objects by year, month, fortnight, week and more!

Chronic

A natural language date/time parser written in pure Ruby.

In 2 lists

date_range_formatter

The simple tool to make work with date ranges in Ruby more enjoyable.

groupdate

The simplest way to group temporal data in ActiveRecord, arrays and hashes.

In 2 lists

holidays

A collection of Ruby methods to deal with statutory and other holidays.

ice_cube

A date recurrence library which allows easy creation of recurrence rules and fast querying.

Jekyll-Timeago

A Ruby library to compute distance of dates in words, with localization support, alternative styles, CLI and Jekyll support.

local_time

Rails Engine for cache-friendly, client-side local time.

montrose

a simple library for expressing, serializing, and enumerating recurring events in Ruby.

stamp

Format dates and times based on human-friendly examples, not arcane strftime directives.

time_diff

Calculates the difference between two time.

timezone

Accurate current and historical timezones and transformations, with support for Geonames and Google latitude - longitude timezone lookups.

TZinfo

Provides daylight savings aware transformations between times in different timezones.

validates_timeliness

Date and time validation plugin for ActiveModel and Rails.

working_hours

A modern ruby gem allowing to do time calculation with working hours.

yymmdd

Tiny DSL for idiomatic date parsing and formatting.

In 2 lists

Debugging Tools

Byebug

A simple to use, feature rich debugger for Ruby 2.

In 4 listsDetails

did_you_mean

Adds class, method & attribute suggestions to error messages.

Pry Byebug

Pry navigation commands via byebug.

In 2 lists

pry-rails

Avoid repeating yourself, use pry-rails instead of copying the initializer to every rails project. This is a small gem which causes rails console to open pry. It therefore depends on pry.

Seeing Is Believing

Displays the results of every line of code in your file.

tracer

A Ruby tracing tool for following method calls, line execution, and object allocations via TracePoint.

Xray

A development tool that reveals your UI's bones.

Decorators

Draper

Draper adds an object-oriented layer of presentation logic to your Rails application.

In 2 lists

Decent Exposure

A helper for creating declarative interfaces in controllers.

Responders

A set of Rails responders to dry up your application.

ShowFor

Quickly show a model information with I18n features. Like form_for for displaying model data.

Developer Tooling

Fuzzy Ruby Server

A Ruby language server offering fuzzy search-based definitions, references, and completions.

Ruby LSP

An opinionated language server for Ruby with support for pull diagnostics, formatting, and more.

Solargraph

A Ruby language server providing IntelliSense, code completion, and inline documentation.

Ruby LSP (VS Code)

VS Code extension providing a rich Ruby development experience powered by Ruby LSP.

In 2 lists

VSCode RuboCop

VS Code extension for RuboCop with autocorrection and lint support.

VSCode Standard

VS Code extension for StandardRB.

VSCode rdbg Ruby Debugger

VS Code extension for the debug gem with DAP support.

debug

The official Ruby debugger with Debug Adapter Protocol (DAP) support.

In 2 lists

ruby-lsp-rails

A Ruby LSP addon for Rails that provides route, model, and association support.

ruby-lsp-rspec

A Ruby LSP addon that provides enhanced RSpec support, including code lens for running and debugging tests.

DevOps Tools

Backup

Provides an elegant DSL in Ruby for performing backups on UNIX-like systems.

BOSH

Cloud Foundry BOSH is an open source tool chain for release engineering, deployment and lifecycle management of large scale distributed services.

Capistrano

A remote server automation and deployment tool written in Ruby.

Chef

A systems integration framework, built to bring the benefits of configuration management to your entire infrastructure.

In 3 lists

Einhorn

Einhorn will open one or more shared sockets and run multiple copies of your process. You can seamlessly reload your code, dynamically reconfigure Einhorn, and more.

Itamae

Simple and lightweight configuration management tool inspired by Chef.

Kanrisuru

Manage remote infrastructure in Ruby

Lita

ChatOps for Ruby: A pluggable chat bot framework usable with any chat service.

In 2 lists

Logstash

Logs/event transport, processing, management, search.

In 2 lists

Kamal

Kamal offers zero-downtime deploys, rolling restarts, asset bridging, remote builds, accessory service management, and everything else you need to deploy and manage your web app in production with Docker.

Mina

Really fast deployer and server automation tool.

In 3 lists

Puppet

An automated administrative engine for your Linux, Unix, and Windows systems, performs administrative tasks (such as adding users, installing packages, and updating server configurations) based on a centralized specification.

In 2 lists

Rubber

The rubber plugin enables relatively complex multi-instance deployments of RubyOnRails applications to Amazon's Elastic Compute Cloud (EC2).

SSHKey

SSH private and public key generator in pure Ruby (RSA & DSA).

Sunzi

Server provisioning utility for minimalists

Ruby-LXC

Native ruby binding for Linux containers.

Vagrant

Create and configure lightweight, reproducible, and portable development environments.

Diff

Diffy

Easy Diffing With Ruby.

gemdiff

Find source repositories for gems. Open, compare, and update outdated gem versions.

JsonCompare

Returns the difference between two JSON files.

Discover

Awesome Ruby @LibHunt

Your go-to Ruby Toolbox. The Awesome Ruby collection + ordering by popularity, additional metadata and comparisons.

GitHub Trending

Find what repositories the GitHub community is most excited about today.

Ruby Bookmarks

Ruby and Ruby on Rails bookmarks collection.

In 4 listsDetails

RubyDaily

Community driven news.

RubyFlow

Ruby Programming Community Link Blog.

In 2 lists

Ruby Land

A well maintained Ruby/Rails aggregator that contains news, opinions, tutorials, and more.

Ruby Rogues

Weekly panel discussion about programming, primarily in Ruby.

In 2 lists

Ruby Weekly

A free, once–weekly e-mail round-up of Ruby news and articles.

In 3 lists

The Ruby Bibliography

Research papers about Ruby.

The Ruby Toolbox

A comprehensive catalog of Ruby and Rails plug-ins, gems, tools and resources for Ruby developers with popularity ratings based on GitHub watchers and Gem downloads.

Documentation

AnnotateRb

Adds database schema annotations for your ActiveRecord models as text comments as well as routes. An active and maintained hard fork of Annotate.

Apipie

Rails API documentation and display tool using Ruby syntax.

In 2 lists

Asciidoctor

A fast, Ruby-based text processor & publishing toolchain for converting AsciiDoc to HTML5, DocBook, EPUB3, PDF & more.

fitting

Library add improve test log for RSpec and WebMock, validate its according to API Blueprint and Open API, show the documentation coverage with log.

GitHub Changelog Generator

Automatically generate change log from your tags, issues, labels and pull requests on GitHub.

In 3 lists

Gollum

A simple, Git-powered wiki with a sweet API and local frontend.

In 5 listsDetails

grape-swagger

Add swagger compliant documentation to your Grape API.

In 2 lists

Hanna

An RDoc formatter built with simplicity, beauty and ease of browsing in mind.

Hologram

A markdown based documentation system for style guides. It parses comments in your CSS and helps you turn them into a beautiful style guide.

In 2 lists

Inch

Inch is a documentation measurement and evalutation tool for Ruby code, based on YARD.

RDoc

RDoc produces HTML and command-line documentation for Ruby projects.

rspec_api_documentation

Automatically generate API documentation from RSpec.

YARD

YARD enables the user to generate consistent, usable documentation that can be exported to a number of formats very easily.

E-Commerce and Payments

Active Merchant

A simple payment abstraction library extracted from Shopify.

Braintree

Braintree Ruby bindings.

Conekta

Conekta Ruby bindings.

credit_card_validations

A ruby gem for validating credit card numbers, generating valid numbers, Luhn checks.

Pay

A payments engine for Rails, supporting Stripe, Braintree, Paddle, and Lemon Squeezy.

PayPal Server SDK

PayPal's official Ruby SDK for the PayPal Server APIs (Orders and Payments).

ROR Ecommerce

A Rails e-commerce platform.

Solidus

An open source, eCommerce application for high volume retailers.

In 3 lists

Spree

Spree is a complete open source e-commerce solution for Ruby on Rails.

In 3 lists

stripe-ruby

Stripe Ruby bindings.

Workarea

An extensible, high-performance eCommerce platform depended on by some of the world's top retailers.

Ebook

bookpub

Bookshop is a an open-source agile book development and publishing framework for authors, editors.

Gepub

A generic EPUB library for Ruby : supports EPUB 3.

Mobi

A Ruby way to read MOBI format metadata.

Review

Re:VIEW is flexible document format/conversion system.

Email

Ahoy Email

Analytics and tracking for e-mails.

In 2 lists

Gibbon

API wrapper for the Mailchimp e-mail marketing platform.

Incoming

Incoming! helps you receive email in your Rack apps.

LetterOpener

Preview mail in the browser instead of sending.

In 2 lists

Mail

A Really Ruby Mail Library.

In 3 lists

MailCatcher

Catches mail and serves it through a dream.

In 3 lists

MailForm

Send e-mail straight from forms in Rails with I18n, validations, attachments and request information.

Maily

A Rails Engine to manage, test and navigate through all your email templates of your app, being able to preview them directly in your browser.

MidiSmtpServer

The highly customizable ruby SMTP-Service library with builtin support for AUTH and SSL/STARTTLS, 8BITMIME and SMTPUTF8, IPv4 and IPv6 and more.

Pony

The express way to send mail from Ruby.

In 2 lists

Postal

A fully featured open source mail delivery platform for incoming & outgoing e-mail.

In 4 listsDetails

premailer-rails

CSS styled emails without the hassle.

In 2 lists

Roadie

Roadie tries to make sending HTML emails a little less painful by inlining stylesheets and rewriting relative URLs for you inside your emails.

Sup

A curses threads-with-tags style email client.

Truemail

Configurable framework agnostic plain Ruby email validator/verifier. Verify email via Regex, DNS and SMTP. Be sure that email address valid and exists.

Encryption

bcrypt-ruby

bcrypt-ruby is a Ruby binding for the OpenBSD bcrypt() password hashing algorithm.

RbNaCl

Ruby binding to the Networking and Cryptography (NaCl) library.

Sym

A time-saving symmetric encryption gem based on OpenSSL that uses 256bit (password-encrypted) keys. Read the key from STDIN, a file, ENV or, on a Mac: OS-X Keychain.

Symmetric Encryption

Transparently encrypt ActiveRecord, Mongoid, and MongoMapper attributes. Encrypt passwords in configuration files. Encrypt entire files at rest.

Themis

crypto library for painless data security, providing symmetric and asymmetric encryption, secure sockets with forward secrecy, for mobile and server platforms.

In 13 listsDetails

Environment Management

chruby

Change your current Ruby. No shims, no crazy options or features, ~90 LOC.

In 3 lists

fry

Simple ruby version manager for fish.

gem_home

A tool for changing your $GEM_HOME.

rbenv

Use rbenv to pick a Ruby version for your application and guarantee that your development environment matches production.

ruby-build

Compile and install Ruby.

ruby-install

Installs Ruby, JRuby, Rubinius, MagLev or MRuby.

In 2 lists

rv

A fast Ruby version and toolchain manager written in Rust.

RVM

RVM is a command-line tool which allows you to easily install, manage, and work with multiple ruby environments from interpreters to sets of gems.

In 2 lists

Tokaido

Ruby, Rails, SQLite and Redis encapsulated in a single drag-and-drop OS X app, designed to make installing a working RoR environment easy for beginners.

Uru

Uru is a lightweight, multi-platform command line tool that helps you use the multiple rubies on your 32/64-bit Linux, OS X, or Windows systems.

Error Handling

Airbrake

The official Airbrake library for Ruby on Rails (and other Rack based frameworks).

In 2 lists

Better Errors

Better error page for Rack apps.

In 2 lists

Bugsnag

Error monitoring for Rails, Sinatra, Rack, and plain Ruby apps.

Errbit

The open source, self-hosted error catcher.

In 4 listsDetails

Exception Handler

Custom error pages.

Exception Notification

A set of notifiers for sending notifications when errors occur in a Rack/Rails application.

Honeybadger

Exception, uptime, and performance monitoring for Ruby.

In 5 listsDetails

Nesty

Nested exceptions for Ruby.

Rails Error Dashboard

Self-hosted error tracking for Rails, running inside your app with no external services.

Sentry Ruby

The Ruby client for Sentry.

Rollbar

Easy and powerful exception and error tracking for your applications.

In 2 lists

Event Sourcing

Eventide Project

Pub/sub, event sourcing, and evented autonomous services backed by the Message DB message store.

In 2 lists

Rails Event Store (RES)

A library for publishing, consuming, storing and retrieving events. It's your best companion for going with an event-driven architecture for your Rails application.

In 2 lists

Feature Flippers and A/B Testing

Motorhead

A Rails Engine framework that helps safe and rapid feature prototyping.

flipper

Feature flipping for ANYTHING. Make turning features on/off so easy that everyone does it. Whatever your data store, throughput, or experience.

Rollout

Feature flippers.

Split

Rack Based AB testing framework.

Unleash

Ruby client for Unleash, a powerful feature toggle system that gives you a great overview over all feature toggles across all your applications and services.

File Upload

attache

Standalone image and file server to decouple your app from file management concerns.

CarrierWave

Classier solution for file uploads for Rails, Sinatra and other Ruby web frameworks.

In 4 listsDetails

DragonFly

A Ruby gem for on-the-fly processing - suitable for image uploading in Rails, Sinatra and much more!.

rack-secure-upload

Upload files securely.

Refile

A modern file upload library for Ruby applications, Refile is an attempt by CarrierWave's original author to fix the design mistakes and overengineering in CarrierWave.

In 2 lists

Shrine

Toolkit for handling file uploads in Ruby.

File System Listener

Guard

A command line tool to easily handle events on file system modifications.

In 3 lists

Guard::LiveReload

Automatically reload your browser when 'view' files are modified.

In 2 lists

Listen

The Listen gem listens to file modifications and notifies you about the changes.

Rerun

Restarts an app when the filesystem changes. Uses growl and FSEventStream if on OS X.

Retest

A simple CLI to watch file changes and run their matching Ruby specs. Works on any ruby projects with no setup.

Form Builder

bootstrap_form

Rails form builder that makes it super easy to create beautiful-looking forms with Twitter Bootstrap 3+.

Cocoon

Dynamic nested forms using jQuery made easy; works with formtastic, simple_form or default forms.

In 2 lists

ComfyBootstrapForm

Rails form builder that makes it easy to create forms with Bootstrap 4 markup

Formtastic

A Rails form builder plugin with semantically rich and accessible markup.

In 2 lists

Rapidfire

Making dynamic surveys should be easy!

Reform

Gives you a form object with validations and nested setup of models. It is completely framework-agnostic and doesn't care about your database.

Simple Form

Rails forms made easy.

In 3 lists

Game Development and Graphics

Dragon Ruby

DragonRuby is a zero dependency, cross platform, Ruby runtime built on top of mRuby, libSDL, and LLVM. Write Ruby on any OS and deploy to PC, Mac, Linux, iOS, Android, Raspberry Pi, WASM, Nintendo Switch, Sony Playstation, and Microsoft Xbox.

Gosu

A 2D game development library for the Ruby and C++ programming languages.

Mittsu

Mittsu makes 3D graphics easier by providing an abstraction over OpenGL, and is based heavily off of THREE.js.

In 2 lists

Ruby 2D

Create cross-platform 2D applications, games, and visualizations with ease.

In 2 lists

Taylor

Taylor is a game engine built using mruby and raylib.

Gem Generators

Gemsmith

A command line interface for smithing new Ruby gems.

Hoe

Hoe is a Rake/RubyGems helper for project Rakefiles.

Gem Servers

Gemfast

A drop in replacement for geminabox written in Go.

Gem in a box

Really simple rubygem hosting.

Gemirro

Gem to automatically make a rubygems mirror.

Gemstash

A RubyGems.org cache and private gem server.

Geolocation

Geocoder

A complete geocoding solution for Ruby. With Rails it adds geocoding (by street or IP address), reverse geocoding (find street address based on given coordinates), and distance queries.

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.

Geokit

Geokit gem provides geocoding and distance/heading calculations.

In 2 lists

Google Maps for Rails

Enables easy Google map + overlays creation in Ruby apps.

IP2Location.io

A Ruby SDK allows user to query for an enriched data set based on IP address and provides WHOIS lookup api that helps users to obtain domain information.

rgeo

Geospatial data library. Spatial data types, geometric and spherical calculations, and WKT/WKB serialization.

In 3 lists

Git Tools

ginatra

A web frontend for Git repositories.

git-auto-bisect

Find the commit that broke master.

git_curate

Peruse and delete git branches ergonomically.

In 2 lists

git_reflow

An automated quality control workflow for Agile teams.

git-spelunk

Dig through git blame history.

git-whence

Find which merge a commit came from.

Git Lint

Analyzes Git commits for consistent quality.

Overcommit

A fully configurable and extendable Git hook manager.

In 3 lists

Rugged

Ruby bindings to libgit2.

GraphQL

graphql-batch

A query batching executor.

In 2 lists

graphql-client

A library for declaring, composing and executing GraphQL queries.

graphql-guard

A simple field-level authorization.

graphql-ruby

Ruby implementation of GraphQL.

In 2 lists

GUI

FXRuby

A Ruby library that provides an interface to the FOX GUI toolkit.

Glimmer

Ruby DSL for SWT

In 3 lists

qtbindings

Allows the QT Gui toolkit to be used from Ruby.

In 2 lists

Ruby-GNOME

Ruby language bindings for the GNOME development environment.

In 2 lists

Shoes

Shoes makes building little graphical programs for Mac, Windows, and Linux super simple.

HTML/XML Parsing

HappyMapper

Object to XML mapping library, using Nokogiri.

HTML::Pipeline

HTML processing filters and utilities.

Nokogiri

An HTML, XML, SAX, and Reader parser with XPath and CSS selector support.

Nokolexbor

High-performance HTML5 parser based on Lexbor, with support for both CSS selectors and XPath.

Oga

An XML/HTML parser written in Ruby. Oga does not require system libraries such as libxml, making it easier and faster to install on various platforms.

Ox

A fast XML parser and Object marshaller.

ROXML

Custom mapping and bidirectional marshalling between Ruby and XML using annotation-style class methods, via Nokogiri or LibXML.

HTTP Clients and tools

Accept Language

A tiny library for parsing the Accept-Language header from browsers (as defined in RFC 2616).

excon

Usable, fast, simple Ruby HTTP 1.1. It works great as a general HTTP(s) client and is particularly well suited to usage in API clients.

In 2 lists

Faraday

an HTTP client lib that provides a common interface over many adapters (such as Net::HTTP) and embraces the concept of Rack middleware when processing the request/response cycle.

Device Detector

A precise and fast user agent parser and device detector, backed by the largest and most up-to-date user agent database.

Http Client

Gives something like the functionality of libwww-perl (LWP) in Ruby.

HTTP

The HTTP Gem: a simple Ruby DSL for making HTTP requests.

HTTPX

Pure ruby HTTP client, supports HTTP/2 and HTTP/1, concurrent requests, plugin system for extended features (cookies, retries, following redirects, proxy, streaming...).

httparty

Makes http fun again!

In 2 lists

Http-2

Pure Ruby implementation of HTTP/2 protocol

Patron

Patron is a Ruby HTTP client library based on libcurl.

RESTClient

Simple HTTP and REST client for Ruby, inspired by microframework syntax for specifying actions.

In 3 lists

Rack::Cors

Cross-Origin Resource Sharing (CORS) middleware for Rack applications.

Savon

Savon is a SOAP client for the Ruby programming language.

In 2 lists

Sawyer

Secret user agent of HTTP, built on top of Faraday.

Sniffer

Tool to log and debug outgoing HTTP requests across multiple ruby libraries.

Typhoeus

Typhoeus wraps libcurl in order to make fast and reliable requests.

Image Processing

FastImage

FastImage finds the size or type of an image given its uri by fetching as little as needed.

ImageProcessing

High-level image processing wrapper for libvips and ImageMagick/GraphicsMagick

MiniMagick

A ruby wrapper for ImageMagick or GraphicsMagick command line.

In 3 lists

Phasion

Ruby wrapper around pHash, the perceptual hash library for detecting duplicate multimedia files.

In 2 lists

PSD.rb

Parse Photoshop files in Ruby with ease.

In 2 lists

RMagick

RMagick is an interface between Ruby and ImageMagick.

In 2 lists

ruby-vips

A binding for the libvips image processing library.

Skeptick

Skeptick is an all-purpose DSL for building and running ImageMagick commands.

Implementations/Compilers

JRuby

A Java implementation of the Ruby language.

In 2 lists

MRuby

Lightweight Ruby. Can be linked and embedded in your application.

In 3 lists

Natalie

Natalie is a Ruby compiler that provides an ahead-of-time compiler using C++ and gcc/clang as the backend.

Opal

Ruby to Javascript compiler.

In 2 lists

Rubinius

An implementation of the Ruby programming language. Rubinius includes a bytecode virtual machine, Ruby syntax parser, bytecode compiler, generational garbage collector, just-in-time (JIT) native machine code compiler, and Ruby Core and Standard libraries.

In 2 lists

TruffleRuby

A high performance implementation of the Ruby programming language. Built on the GraalVM by Oracle Labs.

Internationalization

FastGettext

Ruby internationalization tool with less memory, simple, clean namespace and threadsafe.

Globalize

Globalize builds on the I18n API in Ruby on Rails to add model translations to ActiveRecord models.

In 2 lists

i18n-tasks

Manage missing and unused translations with the awesome power of static analysis.

i18n

Ruby Internationalization and localization solution.

mini_i18n

Minimalistic, flexible and fast Internationalization library. It supports localization, interpolations, pluralization, fallbacks, nested keys and more.

rails-i18n

Repository for collecting Locale data for Rails I18n as well as other interesting, Rails related I18n stuff.

rails-i18n-manager

Web interface to manage i18n translations helping to facilitate the editors of your translations.

r18n

Advanced i18n library for Rails, Sinatra, desktop apps, models, works well with complex languages like Russian.

Termit

Translations with speech synthesis in your terminal.

In 2 lists

Tolk

A web interface for doing i18n translations packaged as a Rails engine.

twitter-cldr-rb

Ruby implementation of the ICU (International Components for Unicode) that uses the Common Locale Data Repository to format dates, plurals, and more.

IRB

Clipboard

Access to the system clipboard on Linux, MacOS and Windows.

KatakataIrb

IRB with Kata(型 Type) completion.

irbtools

Improvements for Ruby's IRB.

Looksee

A tool for illustrating the ancestry and method lookup path of objects. Handy for exploring unfamiliar codebases.

Pry

A powerful alternative to the standard IRB shell for Ruby.

rib

A lightweight and extensible IRB replacement.

Logging

Fluentd

Fluentd collects events from various data sources and writes them to files, database or other types of storages.

In 4 listsDetails

HttpLog

Log outgoing HTTP requests.

Log4r

Log4r is a comprehensive and flexible logging library for use in Ruby programs.

Logging

A flexible logging library for use in Ruby programs based on the design of Java's log4j library.

Lograge

An attempt to tame Rails' default policy to log everything.

In 3 lists

Ougai

A structured logging system that is capable of handling a message, structured data, or an exception easily. It has JSON and human-readable formatters.

Scrolls

Simple logging.

Semantic Logger

Scalable, next generation enterprise logging for Ruby.

Syslogger

A drop-in replacement for the standard Logger Ruby library, that logs to the syslog instead of a log file.

Yell

Your Extensible Logging Library.

In 2 lists

Machine Learning

AI4R

Algorithms covering several Artificial intelligence fields.

In 2 lists

Awesome Machine Learning with Ruby

A Curated List of Ruby Machine Learning Links and Resources.

In 3 listsDetails

m2cgen

A CLI tool to transpile trained classic ML models into a native Ruby code with zero dependencies.

In 16 listsDetails

rb-libsvm

Ruby language bindings for LIBSVM. SVM is a machine learning and classification algorithm.

In 4 listsDetails

ruby-fann

Ruby library for interfacing with FANN (Fast Artificial Neural Network).

In 3 lists

rumale

A machine learning library with interfaces similar to Scikit-Learn.

In 3 lists

TensorFlow

The end-to-end machine learning platform for Ruby.

Torch.rb

Deep learning for Ruby, powered by LibTorch.

weka

Machine learning and data mining algorithms for JRuby.

In 3 lists

Markdown Processors

kramdown

Kramdown is yet-another-markdown-parser but fast, pure Ruby, using a strict syntax definition and supporting several common extensions.

In 3 lists

markdown_helper

A markdown pre-processor implementing file inclusion and page TOC (table of contents).

Maruku

A pure-Ruby Markdown-superset interpreter.

In 2 lists

Redcarpet

A fast, safe and extensible Markdown to (X)HTML parser.

In 4 listsDetails

word-to-markdown

Gem to convert Microsoft Word documents to Markdown.

In 2 lists

ZMediumToMarkdown

A powerful tool that allows you to effortlessly download and convert your Medium posts to Markdown format.

Measurements

Measured

Wrapper objects which encapsulate measurements and their associated units in Ruby.

Ruby Units

Provides classes and methods to perform unit math and conversions.

Mobile Development

dryrun

Try any Android library on your smartphone directly from the command line.

fastlane

Connect all iOS deployment tools into one streamlined workflow.

In 3 lists

fastlane-plugin-pgyer

Distribute iOS, Android and HarmonyOS apps to PGYER beta testing service from your Fastlane lane.

PubNub

Real-time Push Service in the Cloud.

Ruboto

A platform for developing full stand-alone apps for Android using the Ruby language and libraries.

RubyMotion

A revolutionary toolchain that lets you quickly develop and test full-fledged native iOS and OS X applications for iPhone, iPad, Mac and Android.

Money

eu_central_bank

A gem that calculates the exchange rate using published rates from European Central Bank.

Monetize

A library for converting various objects into Money objects.

Money

A Ruby Library for dealing with money and currency conversion.

In 2 lists

Music and Sound

Coltrane

A music theory library with a command-line interface.

Maestro

A Slack-Powered music bot for Spotify

Sonic Pi

A live coding synth for everyone originally designed to support computing and music lessons.

In 2 lists

Natural Language Processing

Awesome NLP with Ruby

Awesome List for Practical Natural Language Processing done in Ruby.

In 5 listsDetails

Parslet

A small Ruby library for constructing parsers in the PEG (Parsing Expression Grammar) fashion.

pocketsphinx-ruby

Ruby speech recognition with Pocketsphinx.

In 2 lists

Pragmatic Segmenter

Pragmatic Segmenter is a rule-based sentence boundary detection gem that works out-of-the-box across many languages.

In 2 lists

Ruby Natural Language Processing Resources

Collection of links to Ruby Natural Language Processing (NLP) libraries, tools and software.

In 4 listsDetails

Sentimental

Simple sentiment analysis with Ruby.

Text

A collection of text algorithms including Levenshtein distance, Metaphone, Soundex 2, Porter stemming & White similarity.

Textstat

Ruby gem for text readability analysis. Calculate readability statistics using 13 proven formulas (Flesch, SMOG, Coleman-Liau, etc.) with support for 22 languages.

Treat

Treat is a toolkit for natural language processing and computational linguistics in Ruby.

In 4 listsDetails

Treetop

PEG (Parsing Expression Grammar) parser.

Words Counted

A highly customisable Ruby text analyser and word counter.

In 2 lists

Networking

Dnsruby

A pure Ruby DNS client library which implements a stub resolver. It aims to comply with all DNS RFCs.

RubyDNS

A high-performance DNS server which can be easily integrated into other projects or used as a stand-alone daemon.

PacketFu

A library for reading and writing packets to an interface or to a libpcap-formatted file.

Notifications

Noticed

ActionMailer-like Notification System for your Ruby on Rails app.

Ruby Push Notifications

iOS, Android and Windows Phone Push notifications made easy.

Rpush

The push notification service for Ruby which supports Apple Push Notification Service, Google Cloud Messaging, Amazon Device Messaging and Windows Phone Push Notification Service.

In 2 lists

webpush

Encryption Utilities for Web Push protocol.

Optimizations

bootsnap

Boot large Ruby/Rails apps faster.

fast_blank

Provides a C-optimized method for determining if a string is blank.

fast_count

Quickly get a count estimation for large tables (>99% of accuracy for PostgreSQL).

fast_underscore

Provides a C-optimized method for transforming a string from any capitalization into underscore-separated

pluck_in_batches

A faster alternative to the custom use of in_batches with pluck.

yajl-ruby

A streaming JSON parsing and encoding library for Ruby (C bindings to yajl).

In 3 lists

ORM/ODM

ActiveSupport

A collection of utility classes and standard library extensions.

In 8 listsDetails

Mongoid

An ODM (Object-Document-Mapper) framework for MongoDB in Ruby.

In 2 lists

Neo4j.rb

A Neo4j OGM (Object-Graph-Mapper) for use in Ruby on Rails and Rack frameworks heavily inspired by ActiveRecord.

NoBrainer

A RethinkDB ORM for Ruby

Ohm

Object-hash mapping library for Redis.

In 2 lists

Redis-Objects

Redis Objects provides a Rubyish interface to Redis, by mapping Redis data types to Ruby objects, via a thin layer over the redis gem.

ROM

Ruby Object Mapper (ROM) is an experimental Ruby library with the goal to provide powerful object mapping capabilities without limiting the full power of your datastore.

Sequel

Sequel is a simple, flexible, and powerful SQL database access toolkit for Ruby.

In 2 lists

ORM/ODM Extensions

active_snapshot

Simplified snapshots and restoration for ActiveRecord models and associations with a transparent white-box implementation

acts_as_archival

ActiveRecord plugin for atomic object tree archiving.

ActsAsParanoid

ActiveRecord plugin allowing you to hide and restore records without actually deleting them.

Audited

Audited is an ORM extension for ActiveRecord & MongoMapper that logs all changes to your models.

Destroyed At

Allows you to "destroy" an object without deleting the record or associated records.

Discard

A simple ActiveRecord mixin to add conventions for flagging records as discarded.

Logidze

Database changes log for Rails.

marginalia

Attach comments to your ActiveRecord queries. By default, it adds the application, controller, and action names as a comment at the end of each query.

In 2 lists

mongoid-history

Multi-user non-linear history tracking, auditing, undo, redo for mongoid.

PaperTrail

Track changes to your ActiveRecord models' data for auditing or versioning.

Paranoia

A re-implementation of acts_as_paranoid for Rails 3 and 4, using much, much, much less code.

In 2 lists

PermenantRecords

Soft-delete your ActiveRecord records, like an explicit version of ActsAsParanoid.

ActiveFlag

Store up to 64 multiple flags in a single integer column with ActiveRecord.

Bitfields

Save migrations and columns by storing multiple booleans in a single integer.

ActiveRecord Import

a library for bulk inserting data using ActiveRecord.

In 2 lists

bulk_insert

A little ActiveRecord extension for helping to insert lots of rows in a single insert statement.

data_miner

Download, pull out of a ZIP/TAR/GZ/BZ2 archive, parse, correct, and import XLS, ODS, XML, CSV, HTML, etc. into your ActiveRecord models.

ferry

A ruby gem for easy data transfer.

arel_extensions

Extending Arel: more "rubyish" syntax, functions for strings, dates, math... and add native extensions for some DBs.

ActiveRecord::Turntable

A database sharding extension for ActiveRecord.

ActiveValidators

An exhaustive collection of off-the-shelf and tested ActiveModel/ActiveRecord validations.

DeepPluck

Allow you to pluck attributes from nested associations without loading a bunch of records.

Enumerize

Enumerated attributes with I18n and ActiveRecord/Mongoid/MongoMapper support.

In 2 lists

Goldiloader

Automatic ActiveRecord eager loading.

In 2 lists

Rating

A true Bayesian rating system with scope and cache enabled.

Acts As Tennant

Add multi-tenancy to a Rails app through a shared database strategy.

Apartment

Multi-tenancy for Rails and ActiveRecord.

Milia

Non-invasive multi-tenancy for Rails which supports Devise authentication out of the box.

Merit

Adds reputation behavior to Rails apps in the form of Badges, Points, and Rankings for ActiveRecord or Mongoid.

PublicActivity

Provides easy activity tracking for your ActiveRecord, Mongoid 3 and MongoMapper models in Rails 3 and 4. Similar to Github's Public Activity.

Simple Feed

Fast and highly scalable read-optimized social activity feed library in pure Ruby, backed by Redis.

Unread

Manage read/unread status of ActiveRecord objects - and it's fast.

ActsAsList

Provides the capabilities for sorting and reordering a number of objects in a list.

positioning

Simple positioning for Active Record models. Supports multiple lists per model and relative positioning.

ranked-model

A modern row sorting library for ActiveRecord. It uses ARel aggressively and is better optimized than most other libraries.

In 2 lists

Acts As Taggable On

A tagging plugin for Rails applications that allows for custom tagging along dynamic contexts.

In 2 lists

ActsAsTree

Extends ActiveRecord to add simple support for organizing items into parent–children relationships.

ActsAsRecursiveTree

ActsAsTree but recursive.

Ancestry

Organise ActiveRecord model into a tree structure using a variation on the materialised path pattern.

In 2 lists

Awesome Nested Set

Awesome Nested Set is an implementation of the nested set pattern for ActiveRecord models.

Closure Tree

Easily and efficiently make your ActiveRecord models support hierarchies using a Closure Table.

Mongoid Tree

A tree structure for Mongoid documents using the materialized path pattern.

Package Management

Bundler

Manage your application's gem dependencies with less pain.

RubyGems

Community's gem hosting service.

In 2 lists

Cloudsmith

A fully managed package management SaaS with support for Rubygems (and many others).

In 3 lists

Berkshelf

A Chef Cookbook manager.

CocoaPods

The Objective-C dependency manager.

In 2 lists

fpm

Effing package management! Build packages for multiple platforms (deb, rpm, etc) with great ease and sanity.

In 3 lists

Homebrew-cask

A CLI workflow for the administration of Mac applications distributed as binaries.

In 2 lists

Homebrew

The missing package manager for OS X.

Traveling Ruby

Traveling Ruby lets you create self-contained Ruby app packages for Linux and OS X.

Pagination

activerecord_cursor_paginate

Cursor-based pagination for ActiveRecord.

Kaminari

A Scope & Engine based, clean, powerful, customizable and sophisticated paginator for modern web app frameworks and ORMs.

In 3 lists

order_query

A keyset pagination library to find the next or previous record(s) relative to the current one efficiently, e.g. for infinite scroll.

Pagy

Pagy is the ultimate pagination gem that outperforms the others in each and every benchmark and comparison. More details can be found on Pagy Wiki.

will_paginate

A pagination library that integrates with Ruby on Rails, Sinatra, Merb, DataMapper and Sequel.

PDF

CombinePDF

A Pure ruby library to merge or stump PDF files, number pages and more.

Grim

Extract PDF pages as images and text. A simple Ruby API to ghostscript, imagemagick, and pdftotext.

HexaPDF

A Versatile PDF Creation and Manipulation Library For Ruby.

InvoicePrinter

Super simple PDF invoicing in Ruby (built on top of Prawn).

Kitabu

A framework for creating e-books from Markdown/Textile text markup using Ruby.

Pdfkit

HTML+CSS to PDF using wkhtmltopdf.

Prawn

Fast, Nimble PDF Writer for Ruby.

In 3 lists

RGhost

RGhost is a document creation and conversion API.

Squid

Squid Ā· A Ruby library to plot charts in PDF files

Wicked Pdf

PDF generator (from HTML) plugin for Ruby on Rails.

In 2 lists

Performance Monitoring

Instrumental

Measure your application in real time with Instrumental.

In 2 lists

New Relic

Find and fix Ruby errors with New Relic application monitoring and troubleshooting.

RoRvsWild

Performances and exceptions monitoring for Rails developers.

Scout

Scout Ruby Application Monitoring Agent.

Skylight

A smart profiler for your Rails apps that visualizes request performance.

Presentation Programs

Slide Show (S9)

Write your slides / talks / presentations in plain text with markdown formatting conventions and generate (static) web pages; template packs incl. deck.js, impress.js, reveal.js, shower, s6, s5 and more.

Process Management and Monitoring

Bluepill

Simple process monitoring tool.

Eye

Process monitoring tool. Inspired from Bluepill and God.

In 2 lists

Foreman

Manage Procfile-based applications.

In 2 lists

God

An easy to configure, easy to extend monitoring framework written in Ruby.

In 2 lists

Health Monitor Rails

A mountable Rails plug-in to check health of services (Database, Cache, Sidekiq, Redis, e.t.c.) used by the Rails app.

In 2 lists

Procodile

Run processes in the background (and foreground) on Mac & Linux from a Procfile.

RedisWebManager

Web interface that allows you to manage easily your Redis instance (see keys, memory used, connected client, etc...).

In 2 lists

Processes

childprocess

Cross-platform ruby library for managing child processes.

posix-spawn

Fast Process::spawn for Rubys >= 1.8.7 based on the posix_spawn() system interfaces.

Profiler and Optimization

batch-loader

A generic lazy batching mechanism to avoid N+1 DB queries, HTTP queries, etc.

benchmark-ips

Provides iteration per second benchmarking for Ruby.

bullet

Help to kill N+1 queries and unused eager loading.

In 3 lists

Derailed Benchmarks

A series of things you can use to benchmark any Rack based app.

Peek

Visual status bar showing Rails performance.

In 2 lists

rack-mini-profiler

Profiler for your development and production Ruby rack apps.

In 4 listsDetails

Rbkit

profiler for Ruby. With a GUI.

rbspy

Sampling profiler for any Ruby process.

ruby-prof

A code profiler for MRI rubies.

In 2 lists

stackprof

A sampling call-stack profiler for ruby 2.1+.

In 2 lists

test-prof

Ruby Tests Profiling Toolbox

QR

RQRCode

RQRCode is a library for creating and rendering QR codes into various formats.

In 2 lists

Queues and Messaging

Backburner

Backburner is a beanstalkd-powered job queue that can handle a very high volume of jobs.

In 2 lists

Bunny

Bunny is a popular, easy to use, well-maintained Ruby client for RabbitMQ (3.3+).

In 2 lists

Delayed::Job

Database backed asynchronous priority queue.

In 2 lists

GoodJob

GoodJob is a multithreaded, Postgres-based, ActiveJob backend for Ruby on Rails.

In 2 lists

Gush

A parallel runner for complex workflows using only Redis and Sidekiq.

JobIteration

An ActiveJob extension to make long-running jobs interruptible and resumable.

Karafka

Framework used to simplify Apache Kafka (a distributed streaming platform) based Ruby applications development.

In 2 lists

Lowkiq

Ordered processing of background jobs for cases where Sidekiq can't help.

March Hare

Idiomatic, fast and well-maintained JRuby client for RabbitMQ.

Resque

A Redis-backed Ruby library for creating background jobs.

In 3 lists

Que

A Ruby job queue that uses PostgreSQL's advisory locks for speed and reliability.

RocketJob

Enterprise Batch Processing System focused on performance, scalability, reliability, and visibility of every job in the system. Outgrown existing solutions? Or, start small and scale up later.

Shoryuken

A super efficient AWS SQS thread based message processor for Ruby.

Sidekiq

A full-featured background processing framework for Ruby. It aims to be simple to integrate with any modern Rails application and much higher performance than other existing solutions.

SidekiqIteration

A Sidekiq extension to make long-running jobs interruptible and resumable.

Sneakers

A fast background processing framework for Ruby and RabbitMQ.

Sucker Punch

A single process background processing library using Celluloid. Aimed to be Sidekiq's little brother.

In 3 lists

Rails Application Generators

Bootstrappers

Bootstrappers generates a base Rails app using Bootstrap template and other goodies.

Hobo

The web app builder for Rails.

Rails Composer

The Rails generator on steroids for starter apps.

In 2 lists

Raygun

Builds applications with the common customization stuff already done.

Suspenders

Suspenders is the base Rails application used at thoughtbot.

In 3 lists

Robotics

Arli

Arli is the CLI tool for searching, installing, and packaging Arduino libraries with a project using a YAML-based Arlifile. It's a "Bundler for Arduino Development".

Artoo

Next generation robotics framework with support for different platforms: Arduino, Leap Motion, Pebble, Raspberry Pi, etc.

RSS

Feed normalizer

Extensible Ruby wrapper for Atom and RSS parsers.

Feedjira

A feed fetching and parsing library.

feedparser

A feed parser and normalizer (Atom, RSS, JSON, etc) library.

Simple rss

A simple, flexible, extensible, and liberal RSS and Atom reader.

Stringer

A self-hosted, anti-social RSS reader.

In 2 lists

Serverless

Jets

A Ruby Serverless Framework to create and deploy serverless microservices with ease, and to seamlessly glue AWS services.

šŸ‘ Lamby

Simple Rails & AWS Lambda Integration using Rack

Scheduling

minicron

A system to manage and monitor cron jobs.

que-scheduler

A lightweight cron scheduler for the async job worker Que.

resque-scheduler

A light-weight job scheduling system built on top of Resque.

In 2 lists

rufus-scheduler

Job scheduler for Ruby (at, cron, in and every jobs).

In 3 lists

ruby-clock

A job scheduler which runs jobs each in their own thread in a persistent process.

Sidekiq-Cron

A scheduling add-on for Sidekiq.

Simple Scheduler

An enhancement for Heroku Scheduler + Sidekiq for scheduling jobs at specific times with a readable YML file.

Whenever

A Ruby gem that provides a clear syntax for writing and deploying cron jobs.

In 3 lists

Scientific

PyCall

Calling Python functions from the Ruby language.

ruby-opencv

An OpenCV wrapper for Ruby.

classifier-reborn

An active fork of Classifier, and general module to allow Bayesian and other types of classifications.

In 3 lists

daru

A library for storage, analysis, manipulation and visualization of data in pure Ruby.

Daru::View

A library for easy and interactive plotting on Jupyter Notebooks and web applications.

Rgl

A framework for graph data structures and algorithms.

NMatrix

Fast numerical linear algebra library for Ruby.

Numo::NArray

N-dimensional Numerical Array for Ruby.

mdarray

Multi dimensional array implemented for JRuby inspired by NumPy.

Red Data Tools

Data processing tools for Ruby.

SciRuby

Tools for scientific computation in Ruby/Rails.

IRuby

A Ruby kernel for Jupyter.

In 3 lists

statsample

A suite for basic and advanced statistics on Ruby.

statsample-timeseries

Bioruby Statsample TimeSeries.

statsample-glm

Generalized Linear Models extension for Statsample.

distribution

Statistical Distributions multi library wrapper.

minimization

Minimization algorithms on pure Ruby.

BioRuby

Library for developing bioinformatics software.

In 2 lists

bloomfilter-rb

BloomFilter(s) in Ruby: Native counting filter + Redis counting/non-counting filters.

decisiontree

A ruby library which implements ID3 (information gain) algorithm for decision tree learning.

In 3 lists

algorithms

Library with documentation on when to use a particular structure/algorithm.

jaro_winkler

Ruby & C implementation of Jaro-Winkler distance algorithm which supports UTF-8 string.

primes-utils

A Rubygem which provides a suite of extremely fast utility methods for testing and generating primes.

Roots

A Rubygem which provides utilities to find all the nth roots of real and complex values.

chewy

High-level Elasticsearch Ruby framework based on the official elasticsearch-ruby client.

In 2 lists

elasticsearch-ruby

Ruby integrations for Elasticsearch.

In 3 lists

elastics

Simple ElasticSearch client with support for migrations and ActiveRecord integration.

has_scope

Has scope allows you to easily create controller filters based on your resources named scopes.

Mongoid Search

Simple full text search implementation for Mongoid.

pg_search

Builds ActiveRecord named scopes that take advantage of PostgreSQL's full text search.

In 2 lists

ransack

Object-based searching.

In 4 listsDetails

Rroonga

The Ruby bindings of Groonga.

scoped_search

Adds a scope supporting search queries and autocompletion against existing fields on ActiveRecord models and associations.

SearchCop

Extends your ActiveRecord models to support fulltext search engine like queries via simple query strings and hash-based queries.

Searchkick

Searchkick learns what your users are looking for. As more people search, it gets smarter and the results get better. It’s friendly for developers - and magical for your users.

In 3 lists

Sunspot

A Ruby library for expressive, powerful interaction with the Solr search engine.

In 3 lists

textacular

Exposes full text search capabilities from PostgreSQL, and allows you to declare full text indexes. Textacular extends ActiveRecord with named_scope methods making searching easy and fun!

Thinking Sphinx

A library for connecting ActiveRecord to the Sphinx full-text search tool.

In 4 listsDetails

typesense-ruby

Ruby client for Typesense, a fast, typo-tolerant search engine.

Security

BeEF

BeEF is short for The Browser Exploitation Framework. It is a penetration testing tool that focuses on the web browser.

In 2 lists

bundler-audit

Patch-level security verification for Bundler.

In 4 listsDetails

Fingerprinter

CMS/LMS/Library etc versions fingerprinter.

haiti

Hash type identifier (CLI & lib).

Metasploit

World's most used penetration testing software.

In 7 listsDetails

Pipal

Password analyser and statistics generator

In 2 lists

Rack::Attack

Rack middleware for blocking & throttling abusive requests.

In 2 lists

Rack::Protection

Rack middleware for protecting against typical Web attacks.

In 2 lists

Ronin

A Ruby platform for vulnerability research and exploit development.

SecureHeaders

Automatically apply several headers that are related to security, including: Content Security Policy (CSP), HTTP Strict Transport Security (HSTS), X-Frame-Options (XFO), X-XSS-Protection, X-Content-Type-Options, X-Download-Options & X-Permitted-Cross-Domain-Policies.

WhatWeb

Website Fingerprinter.

In 4 listsDetails

WPscan

WordPress vulnerability scanner.

Services and Apps

AppSignal

Better monitoring for your Rails applications.

In 3 lists

Codacy

Automated Code Review for Ruby, Rails, JS, PHP, Python etc. Security, Coverage & Quality.

In 8 listsDetails

CodeClimate

Quality & security analysis for Ruby on Rails and Javascript.

In 8 listsDetails

GitHub

Powerful collaboration, code review, and code management for open source and private projects.

In 18 listsDetails

Gitlab CI

Integrate with your GitLab to run tests for your projects.

In 2 lists

GitLab

Open source software to collaborate on code.

In 13 listsDetails

HoundCI

Review your Ruby code for style guide violations.

In 7 listsDetails

Inch CI

Documentation badges for Ruby projects.

OctoLinker

Navigate through projects on GitHub.com efficiently with the OctoLinker browser extension.

In 3 lists

SemaphoreCI

Hosted continuous integration and deployment service for open source and private projects.

In 6 listsDetails

Travis CI

Test and Deploy Your Code with Confidence.

In 3 lists

SEO

FriendlyId

The "Swiss Army bulldozer" of slugging and permalink plugins for Active Record.

In 3 lists

MetaTags

A gem to make your Rails application SEO-friendly.

In 3 lists

prerender_rails

Rails middleware gem for prerendering javascript-rendered pages on the fly for SEO.

In 2 lists

SitemapGenerator

A framework-agnostic XML Sitemap generator written in Ruby.

Social Networking

Decidim

free open-source participatory democracy for cities and organizations

diaspora*

A privacy aware, distributed, open source social network.

In 4 listsDetails

Discourse

A platform for community discussion. Free, open, simple.

In 4 listsDetails

Mailboxer

A private message system for Rails applications.

In 2 lists

Mastodon

A GNU Social-compatible microblogging server.

Retrospring

A social network following the Q/A (question and answer) principle.

In 2 lists

Social Shares

A gem to check how many times url was shared in social networks.

In 2 lists

Thredded

Rails 4.2+ forums/messageboards engine. Its goal is to be as simple and feature rich as possible.

In 2 lists

Spreadsheets and Documents

CAXLSX

A community maintained excel xlsx generation library. AXLSX - The original.

Docsplit

Gem to convert Microsoft Word (and other) documents into images, pdf, pages or text.

Roo

Implements read access for all spreadsheet types and read/write access for Google spreadsheets.

spreadsheet_architect

Spreadsheet Architect is a library that allows you to create XLSX, ODS, or CSV spreadsheets super easily from ActiveRecord relations, plain Ruby objects, or tabular data.

State Machines

AASM

State machines for Ruby classes (plain Ruby, Rails Active Record, Mongoid).

In 4 listsDetails

FiniteMachine

A plain Ruby state machine with a straightforward and expressive syntax.

MicroMachine

A minimal finite state machine implementation in less than 50 lines of code.

In 2 lists

simple_states

A super-slim statemachine-like support library.

Statesman

A statesmanlike state machine library.

In 3 lists

state_machines

Adds support for creating state machines for attributes on any Ruby class.

transitions

A ruby state machine implementation.

Workflow

A finite-state-machine-inspired API for modeling and interacting with what we tend to refer to as 'workflow'.

Static Site Generation

Bridgetown

A Webpack-aware, Ruby-powered static site generator for the modern Jamstack era.

High Voltage

Easily include static pages in your Rails app.

In 2 lists

Jekyll

Transform your plain text into static websites and blogs.

In 5 listsDetails

Awesome Jekyll

A collection of awesome Jekyll tools, plugins, themes, guides and much more.

In 2 lists

Middleman

A static site generator using all the shortcuts and tools in modern web development.

Nanoc

A static site generator, fit for building anything from a small personal blog to a large corporate web site.

In 2 lists

Photish

Generate a highly configurable static website from a photo collection.

webgen

webgen is a fast, powerful and extensible static website generator.

In 2 lists

Template Engine

Curly

A template language that completely separates structure and logic.

Haml

HTML Abstraction Markup Language.

Liquid

Safe, customer facing template language for flexible web apps.

In 2 lists

Mustache

Logic-less Ruby templates.

Slim

A template language whose goal is reduce the syntax to the essential parts without becoming cryptic.

In 3 lists

Tilt

Generic interface to multiple Ruby template engines.

In 2 lists

Testing

RSpec

Behaviour Driven Development for Ruby.; Formatters

In 2 lists

Emoji-RSpec

Custom Emoji Formatters for RSpec.

In 2 lists

Fuubar

The instafailing RSpec progress bar formatter.

Aruba

Testing command line applications with cucumber and rspec.

Bacon

A small RSpec clone.

Capybara

Acceptance test framework for web applications.

Cucumber

BDD that talks to domain experts first and code second.

Cutest

Isolated tests in Ruby.

Fix

Specing framework for Ruby.

Howitzer

Ruby based framework for acceptance testing

minitest

minitest provides a complete suite of testing facilities supporting TDD, BDD, mocking, and benchmarking.

Mocha

Mocha is a mocking and stubbing library for Ruby.

In 2 lists

RR

A test double framework that features a rich selection of double techniques and a terse syntax.

shoulda-matchers

Provides Test::Unit- and RSpec-compatible one-liners that test common Rails functionality. These tests would otherwise be much longer, more complex, and error-prone.

In 2 lists

Spinach

Spinach is a high-level BDD framework that leverages the expressive Gherkin language (used by Cucumber) to help you define executable specifications of your application or library's acceptance criteria.

TestBench

TestBench is a principled test framework for Ruby and MRuby aiming to offer precisely what is needed to test well-designed code effectively and easily.

Test::Unit

Test::Unit is a xUnit family unit testing framework for Ruby.

Fabrication

A simple and powerful object generation library.

factory_bot

A library for setting up Ruby objects as test data.

In 3 lists

Fake Person

Uses some of the most popular given & surnames in the US & UK.

faker

A library for generating fake data such as names, addresses, and phone numbers.

ffaker

A faster Faker, generates dummy data, rewrite of faker.

ActiveMocker

Generate mocks from ActiveRecord models for unit tests that run fast because they don’t need to load Rails or a database.

DnsMock

Ruby DNS mock. Mimic any DNS records for your test environment and even more.

SmtpMock

Ruby SMTP mock. Mimic any SMTP server behaviour for your test environment with fake SMTP server.

TestXml

TestXml is a small extension for testing XML/HTML.

WebMock

Library for stubbing and setting expectations on HTTP requests.

Ferrum

High-level API to control Chrome in Ruby.

In 2 lists

Selenium WebDriver

Ruby bindings for WebDriver.

In 9 listsDetails

Watir

Web application testing in Ruby.

Appraisal

Appraisal integrates with bundler and rake to test your library against different versions of dependencies.

CQL

CQL is a library for making queries against Cucumber style test suites.

cuke_modeler

An modeling library for .feature files that is an abstration layer on top of the gherkin gem, providing a stable base upon which to build other Gherkin related tools.

gitarro

Run, retrigger, handle all type and OS-independent tests against your GitHub Pull Requests.

Knapsack

Optimal test suite parallelisation across CI nodes for RSpec, Cucumber, Minitest, Spinach and Turnip.

mutant

Mutant is a mutation testing tool for Ruby.

Parallel Tests

Speedup Test::Unit + RSpec + Cucumber by running parallel on multiple CPUs (or cores).

power_assert

Power Assert for Ruby.

rspec-tracer

Specs dependency analyzer, flaky tests detector, tests accelerator, and coverage reporter for RSpec

Spring

Preloads your rails environment in the background for faster testing and Rake tasks.

In 5 listsDetails

timecop

Provides "time travel" and "time freezing" capabilities, making it dead simple to test time-dependent code.

In 3 lists

Turbo Tests

Run RSpec tests on multiple cores. Like parallel_tests but with incremental summarized output.

vcr

Record your test suite's HTTP interactions and replay them during future test runs for fast, deterministic, accurate tests.

In 4 listsDetails

Wraith

A responsive screenshot comparison tool.

In 2 lists

Zapata

Who has time to write tests? This is a revolutionary tool to make them write themselves.

Third-party APIs

Ably

Ruby library for realtime communication over Ably.

discordrb

An implementation of the Discord API.

In 2 lists

Dropbox

Ruby client for Dropbox API v2.

fb_graph2

A full-stack Facebook Graph API wrapper.

flickr

A Ruby interface to the Flickr API.

gitlab

Ruby wrapper and CLI for the GitLab API.

google-api-ads-ruby

Google Adwords Ruby client

gmail

A Rubyesque interface to Gmail, with all the tools you'll need.

itunes_store_transporter

Ruby wrapper around Apple's iTMSTransporter program.

linkedin

Provides an easy-to-use wrapper for LinkedIn's REST APIs.

Notion Ruby Client

A Ruby wrapper for the Notion API.

Octokit

Ruby toolkit for the GitHub API.

Pusher

Ruby server library for the Pusher API.

Restforce

A Ruby client for the Salesforce REST api.

ruby-trello

Implementation of the Trello API for Ruby.

simple-slack-bot

You can easily make Slack Bot.

Slack Notifier

A simple wrapper for posting to Slack channels.

Slack ruby gem

A Ruby wrapper for the Slack API.

soundcloud-ruby

Official SoundCloud API Wrapper for Ruby.

terjira

A command-line power tool for Jira.

In 3 lists

tweetstream

A simple library for consuming Twitter's Streaming API.

twilio-ruby

A module for using the Twilio REST API and generating valid TwiML.

twitter

A Ruby interface to the Twitter API.

whatsapp-sdk

Ruby client for the Whatsapp API.

wikipedia

Ruby client for the Wikipedia API.

Yt

An object-oriented Ruby client for YouTube API V3.

x-cli

A command-line power tool for X/Twitter.

Type Signatures and Type Checking

RBS

The official language for describing the structure of Ruby programs. Ships with Ruby and powers type checkers like Steep.

rbs-inline

Write RBS type signatures inline in Ruby source code as comments.

Sorbet

A static type checker for Ruby.

In 2 lists

Sord

Generate RBS and RBI type signatures from YARD documentation.

Spoom

A toolset for using Sorbet in Ruby projects, including strictness management, dead code detection, and more.

Steep

A gradual type checker for Ruby using RBS type signatures.

In 2 lists

Tapioca

The swiss army knife of RBI generation for Sorbet, generating type definitions for gems, DSLs, and more.

Typeprof

A type analysis tool for Ruby that generates RBS type signatures from code.

dry-types

A simple and extendable type system for Ruby with constraints, coercion, and default values.

Literal

Runtime type checking for Ruby with typed properties, structs, data, and enums.

Video

Streamio FFMPEG

Simple yet powerful wrapper around the ffmpeg command for reading metadata and transcoding movies.

VideoInfo

Get video info from Dailymotion, Vimeo, Wistia, and YouTube URLs.

Video Transcoding

Tools to transcode, inspect and convert videos.

View components

Cells

View Components for Rails.

Komponent

An opinionated way of organizing front-end code in Rails, based on components.

Phlex

A framework for building object-oriented views in Ruby.

ViewComponent

View components for Rails.

In 2 lists

View helpers

active_link_to

View helper to manage "active" state of a link.

In 2 lists

auto_html

Rails extension for transforming URLs to appropriate resource (image, link, YouTube, Vimeo video...).

Bh

Bootstrap Helpers for Ruby.

gon

If you need to send some data to your js files and you don't want to do this with long way through views and parsing - use gon.

PluggableJs

Page-specific javascript for Rails applications with the ability of passing data from a controller.

render_async

Render partials to your views asynchronously and increase load performance of your pages.

Web Crawling

LinkThumbnailer

Ruby gem that generates thumbnail images and videos from a given URL. Much like popular social website with link preview.

Kimurai

A modern web scraping framework written in Ruby which works out of box with Headless Chromium/Firefox, PhantomJS, or simple HTTP requests and allows to scrape and interact with JavaScript rendered websites.

Mechanize

Mechanize is a ruby library that makes automated web interaction easy.

In 2 lists

MetaInspector

Ruby gem for web scraping purposes.

Spidr

A versatile Ruby web spidering library that can spider a site, multiple domains, certain links or infinitely. Spidr is designed to be fast and easy to use.

In 3 lists

Upton

A batteries-included framework for easy web-scraping.

In 2 lists

Wombat

Web scraper with an elegant DSL that parses structured data from web pages.

In 2 lists

Web Frameworks

Camping

A web microframework which consistently stays at less than 4kB of code.

Cuba

A microframework for web development.

Hobbit

A minimalistic microframework built on top of Rack.

Hanami

It aims to bring back Object Oriented Programming to web development, leveraging on a stable API, a minimal DSL, and plain objects.

Hyperstack

A Complete Isomorphic Ruby Framework using React and Opal.

Padrino

A full-stack ruby framework built upon Sinatra.

In 2 lists

Rack::App

Bare bone minimalistic framework for building rack apps.

Roda

A routing tree web framework.

In 2 lists

Ruby on Rails

A web-application framework that includes everything needed to create database-backed web applications according to the Model-View-Controller (MVC) pattern.

In 2 lists

Scorched

Light-weight, inheritable and composable web framework, inspired by Sinatra.

Sinatra

Classy web-development dressed in a DSL.

In 3 lists

Syro

Simple router for web applications.

Trailblazer

Trailblazer is a thin layer on top of Rails. It gently enforces encapsulation, an intuitive code structure and gives you an object-oriented architecture.

Web Servers

Agoo

A high performance HTTP server for Ruby that includes GraphQL and WebSocket support.

In 2 lists

Falcon

A high-performance web server for Ruby, supporting HTTP/1, HTTP/2 and TLS.

Iodine

An non-blocking HTTP and Websocket web server optimized for Linux/BDS/macOS and Ruby MRI.

In 2 lists

Phusion Passenger

Fast and robust web server and application server.

In 2 lists

Puma

A modern, concurrent web server for Ruby.

In 2 lists

Rack

A common Ruby web server interface. By itself, it's just a specification and utility library, but all Ruby web servers implement this interface.

Thin

Tiny, fast & funny HTTP server.

In 2 lists

Unicorn

Rack HTTP server for fast clients and Unix.

In 2 lists

WebSocket

AnyCable

Polyglot replacement for Ruby WebSocket servers with Action Cable protocol.

CableReady

CableReady completes the ActionCable story and expands the utility of web sockets in your Rails app.

Faye

A set of tools for simple publish-subscribe messaging between web clients.

Firehose

Build realtime Ruby web applications.

StimulusReflex

Build reactive applications with the Rails tooling you already know and love.

See category
94

Awesome Rust

rust-unofficial/awesome-rust

A curated list of Rust code and resources.

Freshā˜… 60k1833 entriesPushed today
94

Awesome Mac

jaywcjlove/awesome-mac

 This project is dedicated to collecting high-quality macOS software and organizing them systematically by different categories for easy search and use.

Freshā˜… 115k1316 entriesPushed today
94

Awesome Python

vinta/awesome-python

The definitive list that answers "I want to do X in Python, which tool should I use?"

Freshā˜… 324k504 entriesPushed today
94

Awesome C++

fffaraz/awesome-cpp

A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny things. Inspired by awesome-... stuff.

Freshā˜… 74k1358 entriesPushed yesterday
94

Awesome Go

avelino/awesome-go

A curated list of awesome Go frameworks, libraries and software

Freshā˜… 186k3119 entriesPushed yesterday
94

Awesome PHP

ziadoz/awesome-php

A curated list of amazingly awesome PHP libraries, resources and shiny things.

Freshā˜… 33k87 entriesPushed 2 days ago