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.

  • Gen AI apps are built with MongoDB Atlas Icon
    Gen AI apps are built with MongoDB Atlas

    Build gen AI apps with an all-in-one modern database: MongoDB Atlas

    MongoDB Atlas provides built-in vector search and a flexible document model so developers can build, scale, and run gen AI apps without stitching together multiple databases. From LLM integration to semantic search, Atlas simplifies your AI architecture—and it’s free to get started.
    Start Free
  • Build Securely on AWS with Proven Frameworks Icon
    Build Securely on AWS with Proven Frameworks

    Lay a foundation for success with Tested Reference Architectures developed by Fortinet’s experts. Learn more in this white paper.

    Moving to the cloud brings new challenges. How can you manage a larger attack surface while ensuring great network performance? Turn to Fortinet’s Tested Reference Architectures, blueprints for designing and securing cloud environments built by cybersecurity experts. Learn more and explore use cases in this white paper.
    Download Now
  • 1
    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: 4 This Week
    Last Update:
    See Project
  • 2
    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
  • 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
  • Photo and Video Editing APIs and SDKs Icon
    Photo and Video Editing APIs and SDKs

    Trusted by 150 million+ creators and businesses globally

    Unlock Picsart's full editing suite by embedding our Editor SDK directly into your platform. Offer your users the power of a full design suite without leaving your site.
    Learn More
  • 5
    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: 2 This Week
    Last Update:
    See Project
  • 6
    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
  • 7
    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
  • 8
    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
  • 9
    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: 1 This Week
    Last Update:
    See Project
  • Keep company data safe with Chrome Enterprise Icon
    Keep company data safe with Chrome Enterprise

    Protect your business with AI policies and data loss prevention in the browser

    Make AI work your way with Chrome Enterprise. Block unapproved sites and set custom data controls that align with your company's policies.
    Download Chrome
  • 10
    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: 1 This Week
    Last Update:
    See Project
  • 11
    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: 1 This Week
    Last Update:
    See Project
  • 12
    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
  • 13
    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: 1 This Week
    Last Update:
    See Project
  • 14
    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: 1 This Week
    Last Update:
    See Project
  • 15

    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: 5 This Week
    Last Update:
    See Project
  • 16
    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: 2 This Week
    Last Update:
    See Project
  • 17
    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: 3 This Week
    Last Update:
    See Project
  • 18
    DYI for Rails

    DYI for Rails

    "DYI for Rails" is a library for use DYI on Rails.

    "DYI for Rails" is a library for use DYI on Rails. "DYI for Rails" provides some helpers and module for drawing a image of DYI.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 19
    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
  • 20
    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
  • 21
    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
  • 22
    Down

    Down

    Streaming downloads using Net::HTTP, http.rb or HTTPX

    Down is a small, reliable Ruby library for downloading files that favors correctness, streaming, and clear error handling. It follows redirects safely, supports timeouts and retries, and streams responses to disk to keep memory usage low—ideal for large downloads or server environments. The API returns file-like objects (often Tempfile) with helpful metadata such as original filename and content type, which plays nicely with file-attachment libraries and background jobs. Multiple HTTP backends are supported, letting you choose between Net::HTTP or faster/feature-rich clients while keeping a consistent interface. It exposes distinct exception classes and content validation options, so callers can differentiate transient network issues from invalid responses. In practice, Down is often used as the dependable download layer in upload/processing pipelines where robustness matters more than raw feature bloat.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 23
    EventMachine

    EventMachine

    EventMachine, fast, simple event-processing library for Ruby programs

    EventMachine is an event-driven I/O and lightweight concurrency library for Ruby. It provides event-driven I/O using the Reactor pattern, much like JBoss Netty, Apache MINA, Python's Twisted, Node.js, libevent and libev. Extremely high scalability, performance and stability for the most demanding production environments. An API that eliminates the complexities of high-performance threaded network programming, allowing engineers to concentrate on their application logic. This unique combination makes EventMachine a premier choice for designers of critical networked applications, including Web servers and proxies, email and IM production systems, authentication/authorization processors, and many more. EventMachine has been around since the early 2000s and is a mature and battle-tested library.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 24
    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: 0 This Week
    Last Update:
    See Project
  • 25
    Geocoder

    Geocoder

    Complete Ruby geocoding solution

    Geocoder is a full-featured geocoding library for Ruby that integrates seamlessly with Rails applications. It enables converting addresses into geographic coordinates (latitude and longitude) and vice versa, known as reverse geocoding. The gem supports multiple geocoding services like Google, Bing, Mapbox, and OpenStreetMap, letting developers choose based on cost or coverage. Beyond simple geocoding, Geocoder can perform IP address lookups, distance queries, and proximity searches directly in ActiveRecord or Mongoid models. With its database integration, you can query for nearby records, order results by distance, or filter results within a radius, making it invaluable for location-based apps. By abstracting away API differences and providing a clean Ruby interface, Geocoder makes geospatial features straightforward to implement in web and mobile projects.
    Downloads: 0 This Week
    Last Update:
    See Project
  • Previous
  • You're on page 1
  • 2
  • 3
  • Next
Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.