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.

  • Our Free Plans just got better! | Auth0 Icon
    Our Free Plans just got better! | Auth0

    With up to 25k MAUs and unlimited Okta connections, our Free Plan lets you focus on what you do best—building great apps.

    You asked, we delivered! Auth0 is excited to expand our Free and Paid plans to include more options so you can focus on building, deploying, and scaling applications without having to worry about your security. Auth0 now, thank yourself later.
    Try free now
  • Automate contact and company data extraction Icon
    Automate contact and company data extraction

    Build lead generation pipelines that pull emails, phone numbers, and company details from directories, maps, social platforms. Full API access.

    Generate leads at scale without building or maintaining scrapers. Use 10,000+ ready-made tools that handle authentication, pagination, and anti-bot protection. Pull data from business directories, social profiles, and public sources, then export to your CRM or database via API. Schedule recurring extractions, enrich existing datasets, and integrate with your workflows.
    Explore Apify Store
  • 1
    Opal jQuery

    Opal jQuery

    jQuery for Opal

    opal-jquery provides DOM access to opal by wrapping jQuery (or zepto) and providing a nice ruby syntax for dealing with jQuery instances. opal-jquery provides an Element class, whose instances are toll-free bridged instances of jQuery objects. Just like ruby arrays are just javascript arrays, Element instances are just jQuery objects. This makes interaction with jQuery plugins much easier. Also, Element will try to bridge with Zepto if it cannot find jQuery loaded, making it ideal for mobile applications as well. The request is actually triggered inside the HTTP. get method, but due to the async nature of the request, the callback and errback handlers can be added anytime before the request returns.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 2
    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: 3 This Week
    Last Update:
    See Project
  • 3
    Learning-SICP

    Learning-SICP

    Collection of Chinese cultural projects and course learning materials

    Learning-SICP is a community project that localizes the MIT course “Structure and Interpretation of Computer Programs” (SICP) and curates complementary study materials for learners, especially Chinese-speaking Scheme/Lisp students. It focuses on translating the official lecture subtitles into Chinese while preserving the original English content for reference, providing an approachable path to a classic foundational course in computer science. The repository organizes translated subtitles, lecture indices, and supporting documents so learners can follow along with the full video series and consult the book and related readings as they study. Beyond subtitles, it aggregates links to the SICP text, environment setup guides, extended exercises, and FAQ resources to smooth first-time setup and deepen understanding of the material.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 4
    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: 3 This Week
    Last Update:
    See Project
  • Desktop and Mobile Device Management Software Icon
    Desktop and Mobile Device Management Software

    It's a modern take on desktop management that can be scaled as per organizational needs.

    Desktop Central is a unified endpoint management (UEM) solution that helps in managing servers, laptops, desktops, smartphones, and tablets from a central location.
    Learn More
  • 5
    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: 3 This Week
    Last Update:
    See Project
  • 6
    Redis Store

    Redis Store

    Cache Redis stores for Ruby web frameworks

    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 marshaling, timeouts, single or multiple nodes, and namespaces.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 7
    Rein

    Rein

    Database constraints made easy for ActiveRecord

    Data integrity is a good thing. Constraining the values allowed by your application at the database level, rather than at the application level, is a more robust way of ensuring your data stays sane. Unfortunately, ActiveRecord doesn't encourage (or even allow) you to use database integrity without resorting to hand-crafted SQL. Rein (pronounced "rain") adds a handful of methods to your ActiveRecord migrations so that you can easily tame the data in your database. All methods in the DSL are automatically reversible, so you can take advantage of reversible Rails migrations.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 8
    XSpear

    XSpear

    Powerfull XSS Scanning and Parameter analysis tool&gem

    XSpear is an XSS Scanner on ruby gems. Powerful XSS Scanning and Parameter analysis tool&gem.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 9
    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: 3 This Week
    Last Update:
    See Project
  • Most modern and flexible cloud platform for MLM companies Icon
    Most modern and flexible cloud platform for MLM companies

    ERP-class software for multi-level marketing

    For direct selling (MLM) companies, from startup to well established enterprises with millions of distributors across the world
    Learn More
  • 10
    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: 2 This Week
    Last Update:
    See Project
  • 11
    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: 2 This Week
    Last Update:
    See Project
  • 12
    Pedestal

    Pedestal

    The Pedestal Server-side Libraries

    Pedestal is a set of libraries that we use to build services and applications. It runs in the back end and can serve up whole HTML pages or handle API requests. There are a lot of tools in that space, so why did we build Pedestal? We had two main reasons. Pedestal is designed for APIs first. Most web app frameworks still focus on the "page model" and server-side rendering. Pedestal lets you start simple and add that if you need it. Pedestal makes it easy to create "live" applications. Applications must respond with immediate feedback even while some back-end communication goes on. Pedestal makes it easy to deliver server-sent events and asynchronous updates. Pedestal works with a huge variety of containers and deployment options. Deploy applications or microservices on unikernels, Docker containers, or JAR files. Pedestal supports Tomcat, Jetty, Immutant (with Undertow), Vert.x, nginx, and Netty.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 13
    Phonelib

    Phonelib

    Ruby gem for phone validation and formatting

    Phonelib is a Ruby gem that provides phone number validation and formatting capabilities by leveraging Google's libphonenumber library. It enables developers to parse, validate, and format international phone numbers within Ruby applications.​
    Downloads: 2 This Week
    Last Update:
    See Project
  • 14
    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: 2 This Week
    Last Update:
    See Project
  • 15
    Stripe Ruby Library

    Stripe Ruby Library

    Ruby library for the Stripe API

    A Ruby library that enables developers to integrate Stripe’s payment gateway into Ruby applications, streamlining billing, payments, and customer management.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 16
    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: 1 This Week
    Last Update:
    See Project
  • 17
    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: 1 This Week
    Last Update:
    See Project
  • 18
    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: 1 This Week
    Last Update:
    See Project
  • 19
    Prawn

    Prawn

    Fast, Nimble PDF Writer for Ruby

    Prawn is a pure Ruby PDF generation library that provides a lot of great functionality while trying to remain simple and reasonably performant. Extensive text rendering support, including flowing text and limited inline formatting options. Comprehensive internationalization features, including full support for UTF-8 based fonts, right-to-left text rendering, fallback font support, and extension points for customizable text wrapping. Support for PDF outlines for document navigation. Low level PDF features, allowing users to create custom extensions by dropping down all the way to the PDF object tree layer. (Mostly useful to those with knowledge of the PDF specification). If you are looking for a highly flexible PDF document generation system, Prawn might be the tool for you. It is not a reporting tool or a publishing toolchain, though it could be fairly easily used to build those things.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 20

    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: 3 This Week
    Last Update:
    See Project
  • 21
    RUBYGAME HAS MOVED. http://rubygame.org
    Downloads: 1 This Week
    Last Update:
    See Project
  • 22
    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: 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
    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: 0 This Week
    Last Update:
    See Project
  • 25
    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
  • Previous
  • You're on page 1
  • 2
  • 3
  • Next