Eloquent Ruby
by Russ Olsen
Ruby and Ruby on Rails bookmarks collection
This page lists names, links and short descriptions. The original list on GitHub is the source and belongs to its authors.
by Russ Olsen
by Noel Rappin and Dave Thomas — The definitive reference on Ruby, updated for Ruby 3.3 with coverage of pattern matching, Ractors, and all the latest features.
by Zed A. Shaw
by David Flanagan and Yukihiro "Matz" Matsumoto
by David Flanagan and Yukihiro "Matz" Matsumoto
by Why the Lucky Stiff
by Sandi Metz
by Pat Shaughnessy
by Avdi Grimm
by Noel Rappin
by Jeremy Evans
by Paolo Perrotta
by David A. Black and Joseph Leo III — Expert-level Ruby mastery with sophisticated topics like reflection, threading, and recursion. Updated for Ruby 2.5.
by Ben Dixon
by Launch School — This book doesn't teach how to use Rails to build prototypes. Instead, it dives one layer below the surface to expose how Rails is pieced together.
Academic writing on the Ruby programming language.
by Obie Fernandez, Lucas Dohmen, and Tom Henrik Aadland — The definitive, comprehensive Rails 7 reference covering all APIs, Hotwire, and advanced techniques for experienced developers.
by Sam Ruby, David Bryant Copeland, and Dave Thomas — Completely updated for Rails 7 with system testing, Webpack, and advanced JavaScript techniques.
by Michael Hartl — The comprehensive Rails tutorial, fully updated for Rails 7 and modern development practices.
by Daniel Kehoe
by Chad Pytel, Tammer Saleh
by Tom Copeland, Anthony Burns
by Ryan Bigg
by thoughtbot
by David Bryant Copeland — Learn to build Rails applications that can be maintained for years without accruing technical debt. Updated for Rails 8 and Ruby 3.4 with over 450 pages of production-tested techniques.
by Nate Berkopec
by Josef Strzibny — The definitive guide to Kamal deployment tool from 37signals. Updated for Kamal 2.2.1 with practical examples for container-based Rails deployment.
by Aaron Sumner
by thoughtbot
by Semaphore
by David Copeland
a cookbook full of excellent tutorials and recipes for developing Sinatra web applications.
Various DDD, CQRS, Event Sourcing related articles from Ruby experts.
Ruby on Rails, ReactJS, React Native, open source, engineering and design.
Ruby Programming Community Link Blog.
Ruby tutorials & articles to help you become a better developer
Writes about flexible object-oriented code in Ruby and Rails. She is an avid speaker and author of Practical Object-Oriented Design in Ruby.
Rails community on Reddit.
Ruby community on Reddit.
dev.to posts on Ruby.
Discover and find a curated list of popular and new libraries, top authors, trending project kits, discussions, tutorials, and learning resources on Kandi.
Stories tagged as ruby on Lobste.rs.
Rails tutorials for girls in a variety of languages.
A free, once–weekly e-mail round-up of Ruby news and articles.
Questions tagged with ruby.
Questions tagged with ruby-on-rails.
Ruby Course Library.
by Avdi Grimm.
A series of screencasts and guides for all aspects of Ruby on Rails. Learn how to set up your machine, build a Rails application, and deploy it to a server.
(formerly Lynda.com)
Articles and screencasts about awesome Ruby projects.
Video tutorials on more intermediate Ruby on Rails topics.
expert recording services for conferences, seminars, and workshops.
video courses and books ($30 per month).
by Gary Bernhardt.
Daily emails on Ruby, Rails, TDD, OOP, and refactoring with code examples and challenges. Also includes mob programming events with guest developers and Pat Maddox. ($149 per month).
10-week-long Ruby on Rails screencasts. Assumes you know little about programming and haven't used Ruby, Rails, or databases previously. Good for beginners.
*(freemium)
A complete beginner-friendly, low-priced course on Udemy with lots of extra information.
index of all Ruby-related videos from conferences and meetups worldwide.
online Ruby console and 15 minute interactive Ruby tutorial.
a huge amount of programming problems to learn any language.
These guides are designed to make you immediately productive with Rails, and to help you understand how all of the pieces fit together.
will walk you along the path to enlightenment in order to learn Ruby. The goal is to learn the Ruby language, syntax, structure, and some common functions and libraries. We also teach you culture. Testing is not just something we pay lip service to, but something we live. It is essential in your…
articles on Ruby programming.
RSpec best practices.
Search engine for code examples. Here is a demo video.
An online Ruby course recently open sourced.
An online Ruby lesson plan with a community to help.
A free guide for text processing with Ruby from the command line.
A free ebook to learn Ruby regular expressions; includes exercises.
Discover and find a curated list of popular and new libraries, top authors, trending project kits, discussions, tutorials, and learning resources on Kandi.
A cheatsheet for beginners.
(cc) - A community-driven Ruby coding style guide
(cc) - A community-driven Ruby on Rails 4 style guide
(Ruby, Rails, Git, and some other technologies)
don’t let your friends dump git logs into CHANGELOGs™
one of the best text editors for coding. Take a look at Sublime Bookmarks — a comprehensive list of plugins and other related stuff.
intelligent Ruby and Rails IDE.
a hackable text editor from Github (discontinued, archived).
Redefined code editor from Microsoft with Ruby debugging support.
An IDE extension that helps you detect and fix quality issues as you write code.
a Ruby static code analyzer, based on the community Ruby style guide.
allows you to automatically check Ruby code style with RuboCop when files are modified.
a gem that wraps around static analysis gems such as Reek, Flay and Flog to provide a quality report of your Ruby code.
A tool to pick a Ruby version for your application and guarantee that your development environment matches production. Put rbenv to work with Bundler for painless Ruby upgrades and bulletproof deployments.
an rbenv plugin that safely sets global and per-project environment variables.
A command-line tool that allows you to easily install, manage, and work with multiple Ruby environments from interpreters to sets of gems.
A tool that changes the current Ruby.
a self-contained Windows-based installer that includes the Ruby language, an execution environment, important documentation, and more.
a complete development environment for Ruby on Rails that can be deployed in one click. It includes the latest stable release of Ruby, RVM, Rails, Apache, NGinx, MySQL, SQLite, Git and Subversion, Memcache and Varnish, Sphinx, PHP and phpMyAdmin.
an API Documentation Browser and Code Snippet Manager. Dash stores snippets of code and instantly searches offline documentation sets for 150+ APIs, including Ruby core libraries, and Ruby on Rails.
Dash alternative for Linux & Windows.
multiple API documentations in a fast, organized, and searchable interface (web).
Rack HTTP server for fast clients and Unix.
a fast and robust web server and application server for Ruby, Python and Node.js.
A very fast and simple Ruby web server.
a Ruby web server built for concurrency.
a zero-config Rack server for Mac OS X.
user-friendly CLI wrapper for Pow.
a management tool for Pow by 37 signals. It allows you to easily install, update, and manage pow and pow applications seamlessly.
A pure Ruby alternative to Pow! that runs on GNU/Linux.
an application platform that supports popular technologies such as Ruby on Rails and Sinatra, while extending the footprint of Ruby applications to include built-in support for services such as messaging, scheduling, caching, and daemons. TorqueBox provides an all-in-one environment, built upon…
(July 2014) — „I benchmarked every single version of Ruby available as of the beginning of this test — January 2014. On each version I benchmarked every Rack server and web framework combination I could find. I tested with both Apache Bench and wrk to see if there are flaws that one benchmarking…
A comparison of popular Ruby application servers.
remote multi-server automation tool.
a systems integration framework, built to bring the benefits of configuration management to your entire infrastructure.
really fast deployer and server automation tool.
Easy-to-use Docker for Rails with less configuration and affordable production.
a powerful alternative to the standard IRB shell for Ruby. It features syntax highlighting, a flexible plugin architecture, runtime invocation and source and documentation browsing.
code smell detection for Ruby.
manage Procfile-based applications.
a Ruby-based regular expression editor. It's a handy way to test regular expressions as you write them.
An extremely handy command-line HTTP client; a user-friendly cURL replacement.
introspected tunnels to localhost. ngrok creates a tunnel from the public internet (http://subdomain.ngrok.com) to a port on your local machine. You can give this URL to anyone to allow them to try out a web site you're developing without doing any deployment.
a process monitor.
The Ruby Framework for Process Management
A development tool for mocking API endpoints quickly and dynamically.
Build, deploy, and manage your applications on any cloud or on your own server.
Learn programming by doing, not by reading.
Achieve mastery through challenge.
at Toptal.
Add a comment summarizing the current schema to the top or bottom of each of your ActiveRecord models, fixtures, tests and specs, factory_girl factories, routes.rb file, etc.
easy file attachment management for ActiveRecord.
a library for connecting ActiveRecord to the Sphinx full-text search tool, and integrates closely with Rails (but also works with other Ruby web frameworks).
Organize ActiveRecord models into a tree structure.
lets you write your Active Record queries with fewer strings, and more Ruby, by making the Arel awesomeness that lies beneath Active Record more accessible.
Rails ActiveRecord SQL queries log beautifier.
A Rails and Padrino Ruby templating system for generating JSON, XML, MessagePack, PList, and BSON.
an opinionated micro-framework for creating REST-like APIs in Ruby.
write excellent APIs in Ruby.
A collection of middleware to help build services with JSON Schema, OpenAPI 2, and OpenAPI 3.
A micro-framework to handle all SOAP (WSDL) requests.
flexible authentication solution for Rails with Warden.
a flexible authentication system utilizing Rack middleware.
a clean, simple, and unobtrusive ruby authentication solution.
magical Authentication for Rails 3 and 4, with OAuth support. Supports ActiveRecord, DataMapper, Mongoid and MongoMapper.
A simple gem for creating Gmail-like user avatars based on user email or any other string passed.
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.
a beanstalkd-powered job queue that can handle a very high volume of jobs.
A database-backed asynchronous priority queue.
a Ruby job queue that uses PostgreSQL's advisory locks for speed and reliability.
a Redis-backed Ruby library for creating background jobs, placing them on multiple queues, and processing them later.
an asynchronous processing library using Celluloid, heavily influenced by Sidekiq and girl_friday.
object-hash mapping for Redis.
Ruby and Rails multi-threaded efficient Kafka processing framework. It allows you to capture everything that happens in your systems in large scale.
official SASS port of Twitter Bootstrap.
Twitter Bootstrap for Rails asset pipeline.
leaner CSS, in your browser or Ruby.
a lightweight mixin library for Sass.
an extension of CSS3, adding nested rules, variables, mixins, selector inheritance, and more. It's translated to well-formatted, standard CSS using the command line tool or a web-framework plugin.
add a dash of pre-defined style to your Bourbon.
a tool to parse CSS and add vendor prefixes to CSS rules using values from the Can I Use. This gem provides Ruby and Ruby on Rails integration with this JavaScript tool.
a powerful alternative to the standard IRB shell for Ruby. It features syntax highlighting, a flexible plugin architecture, runtime invocation and source and documentation browsing.
a simple to use, feature rich debugger for Ruby 2. It uses the new TracePoint API for execution control and the new Debug Inspector API for call stack navigation, so it doesn't depend on internal core sources. It's developed as a C extension, so it's fast. And it has a full test suite so it's…
subscription API for Rails.
a simple and unified API to access dozens of different payment gateways with very different internal APIs.
this SDK provides Ruby APIs to create, process and manage payment.
An open source ecommerce solution built with Ruby on Rails.
an interface to the ImageMagick and GraphicsMagick image processing libraries.
A Ruby wrapper for ImageMagick or GraphicsMagick command line.
Parse Photoshop files in Ruby with ease.
an HTML, XML, SAX, and Reader parser. Among Nokogiri’s many features is the ability to search documents via XPath or CSS3 selectors.
Your Extensible Logging Library, a comprehensive logging replacement for Ruby.
an open source data collector designed for processing data streams, which instantly enables you to have Log Management, Big Data Analytics, etc.
An alternative logger for Rails or Rack based app, which logs all requests of your application into MongoDB database (allows to store and search any information from logs; web panel allows filter logs, build graphs using MapReduce by information from logs).
logging library that provides the ability to add class/module specific filters.
Awesome Rails logs
Check and search logs from dashboard, use highlight to spot easily, add hourly rotation if needed.
the express way to send email in Ruby.
Mailgun's Official Ruby Library.
An easy Ruby DSL & interface to Amazon SES. See also the official Ruby SDK.
a library that is designed to handle emails generation, parsing and sending in a simple, rubyesque manner.
a Rails engine that provides an endpoint for SendGrid, Cloudmailin, Postmark or Mandrill and hands off the email to your application.
A yet-another-markdown-parser but fast, pure Ruby, using a strict syntax definition and supporting several common extensions, http://kramdown.gettalong.org
a pure-Ruby Markdown-superset interpreter.
the code GitHub uses to render README.your_favorite_markup.
fast, nimble PDF generation.
A high performance Memcached client for Ruby.
A fast, simple event-processing library.
push notification service, supporting Apple Push Notification Service, Google Cloud Messaging, Amazon Device Messaging, Windows Phone Push Notification Service.
A library for reading and writing zip files.
returns the difference between two JSON files.
turn any ruby code into a daemon.
An extraction of ActiveSupport::Memoizable with few extensions.
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.
Your personal Git branch assistant
Comprehensive Excel and CSV import/export tools for Ruby
provides a unified approach to do configurations for gems or other ruby code.
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.
A tiny DSL for idiomatic date parsing and formatting.
Ruby bindings for libnotify, a crossplatform user notification library.
provides a fake file system that can be used for tests.
Automatically generate a change log from your tags, issues, labels and pull requests.
If string, numeric, symbol and nil values wanna be a boolean value, they can with the new #to_b method (and more).
Response Code in a readable way.
extensions to the thread library (includes thread pool).
a code profiler for MRI rubies.
a gem providing "time travel", "time freezing", and "time acceleration" capabilities, making it simple to test time-dependent code. It provides a unified method to mock Time.now, Date.today, and DateTime.now in a single call.
expose Timecop's capabilities to the UI in your rails app, allowing QA to take advantage of it.
a sampling call-stack profiler for ruby 2.1+.
web UI for viewing stackprof dumps.
line-profiler.
status bar showing performance info for Rails apps.
peek into how much each line of your Rails application takes throughout a request.
a gem to help to increase application's performance by reducing the number of queries it makes. It will watch your queries while you develop your application and notify you when you should add eager loading (N+1 queries), when you're using eager loading that isn't necessary and when you should use…
middleware that displays speed badge for every html page. Designed to work both in production and in development.
Real-time performance monitoring with a non-blocking and non-exception causing agent.
abort requests that are taking too long.
protects against typical web attacks. Should work for all Rack apps, including Rails.
Bring in livereload.js into handy Rack middleware. No need for browser extensions anymore! Just plug it in your middleware stack and go! Even supports browsers without WebSockets!
middleware that displays speed badge for every html page. Designed to work both in production and in development.
Rack middleware to help measure production code coverage.
forms made easy for Rails! It's tied to a simple DSL, with no opinion on markup.
Rails plugin for sending asynchronous email with ActionMailer and Resque.
an industrial strength asset packaging library for Rails, providing both the CSS and JavaScript concatenation and compression that you'd expect, as well as YUI Compressor, Closure Compiler, and UglifyJS compatibility, ahead-of-time gzipping, built-in JavaScript template support, and optional…
classier solution for file uploads for Rails, Sinatra and other Ruby web frameworks.
clean, powerful, customizable and sophisticated paginator for modern web app frameworks and ORMs.
a Rails template with Thoughtbot standard defaults, ready to deploy to Heroku.
easily include static pages in your Rails app.
compresses old migrations in a Rails application. If you work on a big project with lots of migrations, every rake db:migrate might take a few seconds, or creating of a new database might take a few minutes. That's because Rails loads all those migration files. Squasher removes all the migrations…
a simple Ruby on Rails plugin for creating meta tags. It supports regular meta tags, OpenGraph (Facebook), Twitter Cards, and custom tags.
replaces the standard Rails error page with a much better and more useful error page. It is also usable outside of Rails in any Rack app as Rack middleware.
turns off the Rails asset pipeline log.
a Rails engine that provides an easy-to-use interface for managing your data.
track changes to your models' data. Good for auditing or versioning.
the Font Awesome font bundled as an asset for the rails asset pipeline.
emoji images and names.
one more emoji gem for Ruby on Rails.
a Ruby on Rails roles solution.
a database-independent format for dumping and restoring data. It complements the the database-independent schema format found in db/schema.rb. The data is saved into db/data.yml.
a Rails form builder plugin with semantically rich and accessible markup.
parameter Validation & Type Coercion.
Rails gem to configure absolutely any url within your project into a SEO-Friendly one.
an email validator for Rails 3 and 4.
validate e-mail addresses against RFC 2822 and RFC 3696 with this Ruby on Rails plugin and gem.
an in-process, in-memory scheduler with no persistence, accepting at, in, cron and every jobs.
scheduler based on rufus-scheduler and Sidekiq (Redis based message queue) for persistence. Inherits web UI from Sidekiq.
one more job scheduler based on rufus-scheduler and Sidekiq.
rufus-scheduler + Resque.
a cron replacement. It runs as a lightweight, long-running Ruby process which sits alongside your web processes (Mongrel/Thin) and your worker processes (DJ/Resque/Minion/Stalker) to schedule recurring work at particular times or dates. Here is a blog post with more details.
a Ruby wrapper for crond, with a clear syntax (each job is a separate process).
Amazon Web Services API for Ruby.
for Ruby.
cloud services library, top to bottom: collections provide a simplified interface, making clouds easier to work with and switch between; requests allow power users to get the most out of the features of each individual cloud; mocks make testing and integrating a breeze.
YouTube API Ruby client.
The Ruby SDK for Square APIs.
a static analysis security vulnerability scanner for Ruby on Rails applications.
Rack middleware for blocking & throttling.
Patch-level verification for Bundler.
Codesake::Dawn is a security source code scanner for ruby powered code. It is especially designed for web applications, but it works also with general purpose ruby scripts. Codesake::Dawn supports all major MVC frameworks like ruby on rails, Padrino and Sinatra; it provides more than 170 security…
includes pure Ruby and C implementation for JSON.
a streaming JSON parser that generates SAX-like events.
a streaming JSON parsing and encoding library for Ruby (C bindings to YAJL).
Optimized JSON, as the name implies, was written to provide speed optimized JSON handling. So far it has achieved that, and is about 2 times faster than any other Ruby JSON parser, and 3 or more times faster at serializing JSON.
a sane configuration format from @mojombo.
Ruby implementation of the BSON Specification (2.0.0+), http://bsonspec.org
an efficient binary serialization format. It lets you exchange data among multiple languages like JSON but it's faster and smaller. For example, small integers (like flags or error code) are encoded into a single byte, and typical short strings only require an extra byte in addition to the strings…
Ruby implementation for Protocol Buffers.
minimal Finite State Machine.
an opinionated state machine library designed to provide a robust audit trail and data integrity. It decouples the state machine logic from the underlying model and allows for easy composition with one or more model classes.
a pure-ruby code highlighter that is compatible with pygments.
a Ruby wrapper for the Python pygments syntax highlighter.
logic-less Ruby templates. A framework-agnostic way to render logic-free views.
a very compact markup language, that accelerates and simplifies template creation down to veritable haiku.
a templating language that reduce the syntax to the essential parts without becoming cryptic.
generic interface to multiple Ruby template engines.
RSpec meta-gem that depends on the other components.
Rails integration for RSpec.
a simple, readable API to express expected outcomes of a code example.
a tool for running automated tests written in plain language.
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, including factory inheritance.
Rails integration for factory_bot.
a tool helping you test web applications by simulating how a real user would interact with your app. It is agnostic about the driver running your tests and comes with Rack::Test and Selenium support built in. WebKit is supported through an external gem.
A Capybara driver for headless WebKit so you can test JavaScript web apps.
simplify form filling with Capybara.
a Ruby library for mocking and stubbing.
Rails application preloader to speeds up development by keeping your application running in the background so you don't need to boot it every time you run a test, rake task or migration.
a library for generating fake data such as names, addresses, and phone numbers.
an open source full-stack framework web application framework.
a DSL for quickly creating web applications in Ruby with minimal effort.
a Ruby framework built upon the Sinatra web library, created to make it fun and easy to code more advanced web applications while still adhering to the spirit that makes Sinatra great!
a microframework for web development originally inspired by Rum, a tiny but powerful mapper for Rack applications. It integrates many templates via Tilt, and testing via Cutest and Capybara.
a complete, modern web framework.
a new ruby web framework, allowing for fast and DRY code using a routing tree. Find out why you should use it.
(July 2014) — „I benchmarked every single version of Ruby available as of the beginning of this test — January 2014. On each version I benchmarked every Rack server and web framework combination I could find. I tested with both Apache Bench and wrk to see if there are flaws that one benchmarking…
rust-unofficial/awesome-rust
A curated list of Rust code and resources.
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.
vinta/awesome-python
Curated Python frameworks, libraries and resources.
fffaraz/awesome-cpp
A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny things. Inspired by awesome-... stuff.
avelino/awesome-go
Curated Go frameworks and libraries.
ziadoz/awesome-php
A curated list of amazingly awesome PHP libraries, resources and shiny things.