Skip to main content

Ruby libraries

CLI

  • TTY - Toolkit for developing sleek command line apps.
  • TTY::Prompt - Beautiful and powerful interactive command line prompt.
  • TTY::Command - Execute shell commands with pretty output logging and capture stdout, stderr and exit status. (Web)
  • CommandLine - Easier way to run command line applications and get all of the output.

DB

  • Sequel - Database Toolkit for Ruby.
  • BatchLoader - Powerful tool for avoiding N+1 DB or HTTP queries.
  • GitHub::DS - Collection of Ruby libraries for working with SQL on top of ActiveRecord's connection.
  • Extralite - Fast Ruby gem for working with SQLite3 databases. (Article)
  • MiniSql - Minimal, fast, safe SQL executor.
  • pg_query - Ruby extension to parse, deparse and normalize SQL queries using the PostgreSQL query parser. (pg_query 2.0)

Web

  • Falcon - High-performance web server for Ruby, supporting HTTP/1, HTTP/2 and TLS.
  • Qeweney - Cross-library feature rich HTTP request / response API. (Article)
  • Vite Ruby - Vite.js in Ruby, bringing joy to your JavaScript experience. (Web)
  • Rodauth - Ruby's Most Advanced Authentication Framework.
  • Apia - API framework for building a self-documenting HTTP API in any Ruby application (including Rails).
  • Secure Headers - Manages application of security headers with many safe defaults.
  • Rack - Modular Ruby web server interface.

macOS

  • lunchy - Friendly wrapper for launchctl.

Test

  • Impersonator - Ruby library to record and replay object interactions.

GraphQL

Auth

  • entitlements-app - Ruby Gem that Powers Entitlements - GitHub's Identity and Access Management System.

Other

  • ruby-macho - Ruby library for examining and modifying Mach-O files.
  • Shoryuken - Super-efficient Amazon SQS thread-based message processor.
  • Tapioca - Generate RBI files for your project's gem dependencies.
  • CarrierWave - Classier solution for file uploads for Rails, Sinatra and other Ruby web frameworks.
  • HexaPDF - Versatile PDF creation and manipulation for Ruby.
  • Scientist - Ruby library for carefully refactoring critical paths.
  • Whenever - Ruby gem that provides a clear syntax for writing and deploying cron jobs.
  • Flipper - Beautiful, performant feature flags for Ruby.
  • debug.rb - Debugging functionality for Ruby. (Article)
  • Async - Composable asynchronous I/O framework for Ruby based on nio4r and timers.
  • MemoWise - Wise choice for Ruby memoization.
  • Zhong - Useful, reliable distributed cron. Uses Redis to acquire exclusive locks on jobs, as well as recording when they last ran.
  • unparser - Turn Ruby AST into semantically equivalent Ruby source.
  • Sidekiq - Simple, efficient background processing for Ruby. (Web) (Happy 10th Birthday, Sidekiq) (HN)
  • Polyphony - Fine-Grained Concurrency for Ruby. (Signal handling in concurrent apps with Ruby and Polyphony)
  • ValueSemantics - Gem for making value classes, with lightweight validation and coercion.
  • Liquid::C - Liquid performance extension in C. (Article)
  • Ruby Facets - Collection of general purpose method extensions and standard additions for the Ruby programming language.
  • Orchestra - Seamlessly chain multiple command or query objects together with a simple, lightweight framework.
  • Treetop - Ruby-based parsing DSL based on parsing expression grammars.
  • attr-gather - Provides a process to fetch information from many data sources in a fully parallelized fashion.
  • Kiba ETL - Data processing & ETL framework for Ruby.
  • algorithms - Ruby algorithms and data structures. C extensions.
  • Numo::NArray - Numerical N-dimensional Array class for fast processing and easy manipulation of multi-dimensional numerical data, similar to numpy.ndaray.
  • sidekiq-scheduler - Lightweight job scheduler extension for Sidekiq.
  • Actor - Composable Ruby service objects.
  • Alba - Fastest JSON serializer for Ruby.
  • Shale - Ruby object mapper and serializer for JSON, YAML and XML. (HN)
  • dry-effects - Algebraic effects in Ruby.
  • Casting - Delegate methods in Ruby and preserve self. Add behaviors to your objects without altering their superclass hierarchy.
  • promise.rb - Ruby implementation of the Promises/A+ spec.