Browse free open source Ruby Libraries and projects below. Use the toggles on the left to filter open source Ruby Libraries by OS, license, language, programming language, and project status.

  • Demo Series - Small Business Backup By Veeam Icon
    Demo Series - Small Business Backup By Veeam

    Learn how to protect your Microsoft 365 data, with simple, actionable tips today.

    Watch this on-demand demo series and learn how to protect your Microsoft 365 data with clear, simple, actionable steps that are easy to implement for businesses of all sizes.
    Watch Demo Series
  • MongoDB Atlas runs apps anywhere Icon
    MongoDB Atlas runs apps anywhere

    Deploy in 115+ regions with the modern database for every enterprise.

    MongoDB Atlas gives you the freedom to build and run modern applications anywhere—across AWS, Azure, and Google Cloud. With global availability in over 115 regions, Atlas lets you deploy close to your users, meet compliance needs, and scale with confidence across any geography.
    Start Free
  • 1
    fog

    fog

    The Ruby cloud services library

    Whether you need compute, dns, storage, or a multitude of other services, fog provides an accessible entry point and facilitates cross-service compatibility. Just getting started working with cloud resources? You are not alone, and having so many complicated options makes it hard to know where to start. fog delivers the knowledge of cloud experts to you, helping you to bootstrap your cloud usage and guiding you as your own expertise develops. By coding with fog from the start you avoid vendor lock-in and give yourself more flexibility to provide value. Whether you are writing a library, designing software as a service product or just hacking on the weekend this flexibility is a huge boon. With a rapidly expanding community and codebase the advantages of fog just keep coming. Join us and together we will realize the future of cloud computing.
    Downloads: 7 This Week
    Last Update:
    See Project
  • 2
    GH Archive

    GH Archive

    GH Archive is a project to record the public GitHub timeline

    GH Archive collects public GitHub activity and preserves it as a historical dataset for analysis. It polls GitHub’s event feed and groups the raw responses into compressed hourly JSON archives. The records cover actions such as commits, forks, issue activity, comments, and repository membership changes. Researchers can download specific hours, days, or longer periods with ordinary HTTP tools and process the events in their own systems. The dataset is also published through Google BigQuery for large-scale SQL-style exploration without downloading every archive. Its structure supports trend analysis, visualizations, machine learning, and open-source ecosystem research. The repository contains the crawler, supporting scripts, and website code, while the actual event files are hosted separately.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 3
    Dependabot

    Dependabot

    Dependabot's core logic for creating update PR's

    Dependabot-Core is the library at the heart of Dependabot security/version updates. Use it to generate automated pull requests updating dependencies for projects written in Ruby, JavaScript, Python, PHP, Dart, Elixir, Elm, Go, Rust, Java and .NET. It can also update git submodules, Docker files, and Terraform files. Check for the latest version of a dependency that's resolvable given a project's other dependencies. Generate updated manifest and lockfiles for a new dependency version. Generate PR descriptions that include the updated dependency's changelogs, release notes, and commits.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 4
    Faraday

    Faraday

    Simple, but flexible HTTP client library, with support for backends

    Faraday is an HTTP client library abstraction layer 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. You probably don't want to use Faraday directly in your project, as it will lack an actual client library to perform requests. Instead, you probably want to have a look at Awesome Faraday for a list of available adapters. The best starting point is the Faraday Website, with its introduction and explanation. This library aims to support and is tested against the currently officially supported Ruby implementations. This means that, even without a major release, we could add or drop support for Ruby versions, following their EOL. Currently that means we support Ruby 2.6+. You can also install the faraday_middleware extension gem to access a collection of useful Faraday middleware.
    Downloads: 2 This Week
    Last Update:
    See Project
  • Earn up to 16% annual interest with Nexo. Icon
    Earn up to 16% annual interest with Nexo.

    Let your crypto work for you

    Put idle assets to work with competitive interest rates, borrow without selling, and trade with precision. All in one platform. Geographic restrictions, eligibility, and terms apply.
    Get started with Nexo.
  • 5
    FriendlyId

    FriendlyId

    FriendlyId is the “Swiss Army bulldozer” of slugging

    FriendlyId is a Rails gem that provides human-readable slugs for ActiveRecord models, replacing numeric IDs in URLs with meaningful strings. For example, instead of /articles/123, you can have /articles/my-first-post. It integrates with ActiveRecord to generate slugs automatically based on attributes (like a title) and manages uniqueness, history, and slug regeneration when records change. FriendlyId also supports features like slug candidates, scoped slugs, and reserved word handling to avoid conflicts. It includes extensions to keep old slugs working as redirects, so links don’t break when content is renamed. By improving readability, SEO, and user-friendliness, FriendlyId has become the de facto solution for slugging in Rails applications.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 6
    Google Toolbox for Mac

    Google Toolbox for Mac

    Google Toolbox for Mac

    Google Toolbox for Mac (GTMSession) is a comprehensive collection of open source Objective-C utilities and frameworks developed by Google to support macOS and iOS application development. It consolidates reusable code components drawn from various internal Google projects, offering developers a wide range of tools for building efficient, maintainable Apple platform software. The library includes modules for networking, logging, testing, data handling, and user interface extensions, helping developers avoid reinventing common functionality. Its modular design allows developers to integrate only the components they need, improving project flexibility and performance. With well-documented interfaces and consistent coding standards, Google Toolbox for Mac serves as a reliable foundation for both small and large-scale applications. It continues to be widely used across open source and internal projects that target Apple ecosystems.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 7
    HexaPDF

    HexaPDF

    Versatile PDF creation and manipulation for Ruby

    HexaPDF is a pure Ruby library with an accompanying application for working with PDF files. It was designed with ease of use and performance in mind. It uses lazy loading and lazy computing when possible and tries to produce small PDF files by default.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 8
    Linguist

    Linguist

    Detect blob languages, suppress generated files and generate graphs

    This library is used on GitHub.com to detect blob languages, ignore binary or vendored files, suppress generated files in diffs, and generate language breakdown graphs. Linguist is a Ruby library so you will need a recent version of Ruby installed. There are known problems with the macOS/XCode supplied version of Ruby that causes problems installing some of the dependencies. Accordingly, we highly recommend you install a version of Ruby using Homebrew, rbenv, rvm, ruby-build, asdf or other packaging system, before attempting to install Linguist and the dependencies. Linguist uses charlock_holmes for character encoding and rugged for libgit2 bindings for Ruby. These components have their own dependencies. A repository's languages stats can also be assessed from the command line using the github-linguist executable. Without any options, github-linguist will output the breakdown that correlates to what is shown in the language stats bar.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 9
    Mechanize

    Mechanize

    Mechanize is a ruby library that makes automated web interaction easy

    The Mechanize library is used for automating interaction with websites. Mechanize automatically stores and sends cookies, follows redirects, and can follow links and submit forms. Form fields can be populated and submitted. Mechanize also keeps track of the sites that you have visited as a history. This library was heavily influenced by its namesake in the Perl world. Mechanize#transact runs the given block and then resets the page history. I.e. after the block has been executed, you're back at the original page; no need to count how many times to call the back method at the end of a loop (while accounting for possible exceptions).
    Downloads: 2 This Week
    Last Update:
    See Project
  • AI-generated apps that pass security review Icon
    AI-generated apps that pass security review

    Stop waiting on engineering. Build production-ready internal tools with AI—on your company data, in your cloud.

    Retool lets you generate dashboards, admin panels, and workflows directly on your data. Type something like “Build me a revenue dashboard on my Stripe data” and get a working app with security, permissions, and compliance built in from day one. Whether on our cloud or self-hosted, create the internal software your team needs without compromising enterprise standards or control.
    Try Retool free
  • 10
    Phlex

    Phlex

    Object-oriented views in Ruby

    Phlex is a Ruby-based framework for building HTML and SVG views using object-oriented programming principles, offering a unique alternative to traditional template systems like ERB. It allows developers to write UI components entirely in Ruby, providing full control over structure, logic, and rendering without mixing HTML and templating syntax. One of its key advantages is performance, as it can render HTML extremely quickly while maintaining predictable scaling even with complex component hierarchies. Phlex integrates seamlessly with Ruby on Rails and supports common tools such as Tailwind CSS, Stimulus, and Turbo, making it easy to incorporate into modern Rails applications. It also emphasizes safety and maintainability by preventing common issues such as cross-site scripting through structural design and strict data handling. Developers benefit from reusable components, modular architecture, and the ability to stream content for improved performance and user experience.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 11
    factory_bot

    factory_bot

    A library for setting up Ruby objects as test data

    factory_bot is a fixtures replacement with a straightforward definition syntax, support for multiple build strategies (saved instances, unsaved instances, attribute hashes, and stubbed objects), and support for multiple factories for the same class (user, admin_user, and so on), including factory inheritance. factory_bot provides a framework and DSL for defining and using factories - less error-prone, more explicit, and all-around easier to work with than fixtures. Each factory has a name and a set of attributes. The name is used to guess the class of the object by default. It is recommended that you have one factory for each class that provides the simplest set of attributes necessary to create an instance of that class. If you're creating ActiveRecord objects, that means that you should only provide attributes that are required through validations and that do not have defaults. Other factories can be created through inheritance to cover common scenarios for each class.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 12
    Asciidoctor PDF

    Asciidoctor PDF

    Asciidoctor PDF: A native PDF converter for AsciiDoc

    A fast text processor & publishing toolchain for converting AsciiDoc to HTML5, DocBook & more. Asciidoctor is a fast, open source, Ruby-based text processor for parsing AsciiDoc® into a document model and converting it to output formats such as HTML 5, DocBook 5, manual pages, PDF, EPUB 3, and other formats. Asciidoctor also has an ecosystem of extensions, converters, build plugins, and tools to help you author and publish content written in AsciiDoc.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 13
    Bourbon

    Bourbon

    A lightweight sass tool set

    Bourbon is a library of Sass mixins and functions that are designed to make you a more efficient style sheet author. It’s not recommended that you modify Bourbon’s files directly as it will make updating to future versions difficult, by overwriting your custom changes or causing merge conflicts. Import Bourbon at the beginning of application.scss. Any project styles that utilize Bourbon’s features must be imported after Bourbon. Bourbon supports Internet Explorer 11+ and the latest versions of Chrome, Firefox, Safari, and Edge. Bourbon is maintained by the thoughtbot design team. It is funded by thoughtbot, inc. and the names and logos for thoughtbot are trademarks of thoughtbot, inc. You can target installation into a specific directory using the path flag. Bourbon is copyright © 2011-2020 thoughtbot, inc. It is free software, and may be redistributed under the terms specified in the license.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 14
    CanCan

    CanCan

    Authorization Gem for Ruby on Rails

    CanCan is an authorization library for Ruby on Rails that helps manage user permissions in a clean and consistent way. It centralizes all authorization logic in a single Ability class, where you define what actions each type of user can or cannot perform on different resources. Developers then use helpers like authorize! in controllers or can? in views to enforce those rules without scattering permission logic across the application. It supports defining permissions using conditions, allowing granular access based on attributes like ownership or role. Because it abstracts authorization cleanly, applications stay easier to read, test, and maintain as business rules evolve. Though no longer actively maintained in its original form, CanCan inspired forks and successors (such as CanCanCan) that continue to be widely used in Rails projects.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 15
    Resque

    Resque

    Ruby library for creating background jobs and processing them

    Resque is a Redis-backed Ruby library for creating background jobs, placing them on multiple queues, and processing them later. Resque (pronounced like "rescue") is a Redis-backed library for creating background jobs, placing those jobs on multiple queues, and processing them later. Background jobs can be any Ruby class or module that responds to perform. Your existing classes can easily be converted to background jobs or you can create new classes specifically to do work. Or, you can do both. Resque is heavily inspired by DelayedJob (which rocks) and comprises three parts, a Ruby library for creating, querying, and processing jobs, a Rake task for starting a worker which processes jobs, a Sinatra app for monitoring queues, jobs, and workers. Resque workers can be distributed between multiple machines, support priorities, are resilient to memory bloat / "leaks," are optimized for REE (but work on MRI and JRuby), tell you what they're doing, and expect failure.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 16
    ajax-datatables-rails

    ajax-datatables-rails

    A wrapper around DataTable's ajax methods that allow synchronization

    DataTables is a nifty jQuery plugin that adds the ability to paginate, sort, and search your HTML tables. When dealing with large tables (more than a couple of hundred rows) however, we run into performance issues. These can be fixed by using server-side pagination, but this breaks some DataTables functionality. ajax-data tables-rails is a wrapper around DataTables ajax methods that allow synchronization with server-side pagination in a Rails app. It was inspired by this Railscast. I needed to implement a similar solution in a couple of projects I was working on, so I extracted a solution into a gem. The final goal of this gem is to generate JSON content that will be given to jQuery DataTables. All the data table customizations (header, tr, td, CSS classes, width, height, buttons, etc.) must take place in the javascript definition of the data table. jQuery DataTables is a very powerful tool with a lot of customization available. Take the time to read the doc.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 17

    Rpg.NET

    Performance enhancement API for RPG Maker XP, VX, VXA.

    Rpg.NET is an API built using the .NET Framework for both improving performance and enhancing the RPG Maker series (XP, VX, and VXA). Contained within are various functions and classes that extend the ability of RPG Maker in areas such as graphics, audio, and Windows API interop. Included is a Ruby script that is the wrapper around the library, so it can be used as any other script within your game.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 18
    Ruby library grouping various light-weight modules useful for many applications. Currently ships: Logging, Platform, GUI, Misc, Plugins, URLAccess, URLCache. See it as a collection of mini-libraries.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 19
    Process Pilot

    Process Pilot

    Ruby library to pilot interactive command line processes in real time

    Ruby library giving a simple way to pilot an external process' stdin, stdout and stderr in real time. Very useful for interactive processes testing or automation.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 20
    A collection of open source libraries and tools that provide solutions for common problems in processing Arabic text, especially in web applications. text normalization, phrase segmentation, text indexing, stop word lists, common spelling mistakes.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 21
    ioblockreader

    ioblockreader

    Block-buffered and cached read over IO objects as Strings

    Ruby library giving block-buffered and cached read over IO objects with a String-like interface. Ideal to parse big files as Strings, limiting memory consumption.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 22
    .files

    .files

    Dotfiles for macOS

    .files is a personal system configuration collection designed primarily for macOS while also supporting Ubuntu and Arch Linux. It automates workstation setup through an idempotent Makefile and organized configuration files. The environment relies heavily on Homebrew, Node.js, modern Bash, GNU utilities, Git, Python, Ruby, and other developer tools. It configures shell behavior, a fast colored prompt, editors, package sets, and macOS defaults. A dedicated dot command provides shortcuts for updates, cleanup, testing, editing configurations, and applying system settings. Installation and runcom setup are continuously tested on macOS and Ubuntu, with support for both Apple Silicon and Intel hardware.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 23
    Awesome Print

    Awesome Print

    Pretty print your Ruby objects with style

    Awesome Print is a Ruby library that pretty prints Ruby objects in full color exposing their internal structure with proper indentation. Rails ActiveRecord objects and usage within Rails templates are supported via included mixins.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 24
    Chartkick

    Chartkick

    Create beautiful JavaScript charts with one line of Ruby

    Chartkick is a Ruby gem that makes it easy to generate beautiful charts in Rails and other Ruby applications with minimal code. It provides a high-level API where developers can use simple helpers like line_chart, pie_chart, or column_chart and pass in data arrays or ActiveRecord queries. Under the hood, it works with popular charting libraries such as Google Charts, Chart.js, and Highcharts, but hides their verbose JavaScript APIs behind a clean Ruby interface. It also handles things like automatic labels, legends, colors, and responsiveness without requiring you to manually configure chart options. Because of its integration with ActiveRecord, developers can quickly visualize trends in their application’s data with minimal transformation. Chartkick is especially valued in dashboards, reporting tools, and admin panels where quick, maintainable visualization is needed without heavy front-end development.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 25
    DYI

    DYI

    DYI is a 2D graphics library, very rich and expressive.

    DYI is a 2D graphics library, very rich and expressive. DYI have been optimized for SVG format, but it is also possible to output other format; for example, EPS.
    Downloads: 0 This Week
    Last Update:
    See Project
  • Previous
  • You're on page 1
  • 2
  • 3
  • Next