awesome-ruby
π A collection of awesome Ruby libraries, tools, frameworks and software
https://github.com/markets/awesome-ruby
Last synced: 13 days ago
JSON representation
-
Security
- WhatWeb - Website Fingerprinter.
- Rack::Protection - Rack middleware for protecting against typical Web attacks.
- SecureHeaders - Automatically apply several headers that are related to security, including: Content Security Policy (CSP), HTTP Strict Transport Security (HSTS), X-Frame-Options (XFO), X-XSS-Protection, X-Content-Type-Options, X-Download-Options & X-Permitted-Cross-Domain-Policies.
- BeEF - BeEF is short for The Browser Exploitation Framework. It is a penetration testing tool that focuses on the web browser.
-
SEO
- FriendlyId - The "Swiss Army bulldozer" of slugging and permalink plugins for Active Record.
- MetaTags - A gem to make your Rails application SEO-friendly.
- prerender_rails - Rails middleware gem for prerendering javascript-rendered pages on the fly for SEO.
- SitemapGenerator - A framework-agnostic XML Sitemap generator written in Ruby.
-
Serverless
- FaaStRuby - Serverless Software Development Platform for Ruby and Crystal developers.
- π Lamby - Simple Rails & AWS Lambda Integration using Rack
- Jets - A Ruby Serverless Framework to create and deploy serverless microservices with ease, and to seamlessly glue AWS services.
-
Services and Apps
- AppSignal - Better monitoring for your Rails applications.
- GitHub - Powerful collaboration, code review, and code management for open source and private projects.
- Inch CI - Documentation badges for Ruby projects.
- Sider - Automated Code Review with GitHub PR. Monitoring Style Violations, Quality, Security, Dependencies.
- CodeClimate - Quality & security analysis for Ruby on Rails and Javascript.
- OctoLinker - Navigate through projects on GitHub.com efficiently with the OctoLinker browser extension.
- GitHub - Powerful collaboration, code review, and code management for open source and private projects.
-
Social Networking
- Decidim - free open-source participatory democracy for cities and organizations
- diaspora* - A privacy aware, distributed, open source social network.
- Discourse - A platform for community discussion. Free, open, simple.
- Mailboxer - A private message system for Rails applications.
- Mastodon - A GNU Social-compatible microblogging server.
- Retrospring - A social network following the Q/A (question and answer) principle.
- Social Shares - A gem to check how many times url was shared in social networks.
- Thredded - Rails 4.2+ forums/messageboards engine. Its goal is to be as simple and feature rich as possible.
-
Spreadsheets and Documents
- CAXLSX - A community maintained excel xlsx generation library. [AXLSX](https://github.com/randym/axlsx) - The original.
- Docsplit - Gem to convert Microsoft Word (and other) documents into images, pdf, pages or text.
- Roo - Implements read access for all spreadsheet types and read/write access for Google spreadsheets.
- spreadsheet_architect - Spreadsheet Architect is a library that allows you to create XLSX, ODS, or CSV spreadsheets super easily from ActiveRecord relations, plain Ruby objects, or tabular data.
-
State Machines
- AASM - State machines for Ruby classes (plain Ruby, Rails Active Record, Mongoid).
- MicroMachine - A minimal finite state machine implementation in less than 50 lines of code.
- simple_states - A super-slim statemachine-like support library.
- Statesman - A statesmanlike state machine library.
- state_machines - Adds support for creating state machines for attributes on any Ruby class.
- transitions - A ruby state machine implementation.
- Workflow - A finite-state-machine-inspired API for modeling and interacting with what we tend to refer to as 'workflow'.
- FiniteMachine - A plain Ruby state machine with a straightforward and expressive syntax.
-
Static Site Generation
- Middleman - A static site generator using all the shortcuts and tools in modern web development.
- Nanoc - A static site generator, fit for building anything from a small personal blog to a large corporate web site.
- webgen - webgen is a fast, powerful and extensible static website generator.
- Bridgetown - A Webpack-aware, Ruby-powered static site generator for the modern Jamstack era.
- High Voltage - Easily include static pages in your Rails app.
- Awesome Jekyll - A collection of awesome Jekyll tools, plugins, themes, guides and much more.
- Photish - Generate a highly configurable static website from a photo collection.
- webgen - webgen is a fast, powerful and extensible static website generator.
-
Template Engine
- Curly - A template language that completely separates structure and logic.
- Haml - HTML Abstraction Markup Language.
- Liquid - Safe, customer facing template language for flexible web apps.
- Mustache - Logic-less Ruby templates.
- Slim - A template language whose goal is reduce the syntax to the essential parts without becoming cryptic.
- Tilt - Generic interface to multiple Ruby template engines.
-
Testing
- Test::Unit - Test::Unit is a xUnit family unit testing framework for Ruby.
- Fabrication - A simple and powerful object generation library.
- Selenium WebDriver - Ruby bindings for WebDriver.
- RSpec - Behaviour Driven Development for Ruby.
- Emoji-RSpec - Custom Emoji Formatters for RSpec.
- Fuubar - The instafailing RSpec progress bar formatter.
- Nyan Cat - Nyan Cat inspired RSpec formatter!
- Aruba - Testing command line applications with cucumber and rspec.
- Capybara - Acceptance test framework for web applications.
- Cutest - Isolated tests in Ruby.
- Fix - Specing framework for Ruby.
- Howitzer - Ruby based framework for acceptance testing
- Mocha - Mocha is a mocking and stubbing library for Ruby.
- RR - A test double framework that features a rich selection of double techniques and a terse syntax.
- shoulda-matchers - Provides Test::Unit- and RSpec-compatible one-liners that test common Rails functionality. These tests would otherwise be much longer, more complex, and error-prone.
- Spinach - Spinach is a high-level BDD framework that leverages the expressive Gherkin language (used by Cucumber) to help you define executable specifications of your application or library's acceptance criteria.
- TestBench - TestBench is a principled test framework for Ruby and MRuby aiming to offer precisely what is needed to test well-designed code effectively and easily.
- factory_bot - A library for setting up Ruby objects as test data.
- Fake Person - Uses some of the most popular given & surnames in the US & UK.
- ffaker - A faster Faker, generates dummy data, rewrite of faker.
- Forgery - Easy and customizable generation of forged data.
- ActiveMocker - Generate mocks from ActiveRecord models for unit tests that run fast because they donβt need to load Rails or a database.
- DnsMock - Ruby DNS mock. Mimic any DNS records for your test environment and even more.
- DuckRails - Tool for mocking API endpoints quickly & dynamically.
- SmtpMock - Ruby SMTP mock. Mimic any SMTP server behaviour for your test environment with fake SMTP server.
- TestXml - TestXml is a small extension for testing XML/HTML.
- WebMock - Library for stubbing and setting expectations on HTTP requests.
- Ferrum - High-level API to control Chrome in Ruby.
- Poltergeist - A PhantomJS driver for Capybara.
- Appraisal - Appraisal integrates with bundler and rake to test your library against different versions of dependencies.
- CQL - CQL is a library for making queries against Cucumber style test suites.
- cuke_modeler - An modeling library for `.feature` files that is an abstration layer on top of the `gherkin` gem, providing a stable base upon which to build other Gherkin related tools.
- gitarro - Run, retrigger, handle all type and OS-independent tests against your GitHub Pull Requests.
- mutant - Mutant is a mutation testing tool for Ruby.
- Parallel Tests - Speedup Test::Unit + RSpec + Cucumber by running parallel on multiple CPUs (or cores).
- power_assert - Power Assert for Ruby.
- Ruby-JMeter - A Ruby based DSL for building JMeter test plans.
- Spring - Preloads your rails environment in the background for faster testing and Rake tasks.
- timecop - Provides "time travel" and "time freezing" capabilities, making it dead simple to test time-dependent code.
- Turbo Tests - Run RSpec tests on multiple cores. Like `parallel_tests` but with incremental summarized output.
- vcr - Record your test suite's HTTP interactions and replay them during future test runs for fast, deterministic, accurate tests.
- Wraith - A responsive screenshot comparison tool.
- Zapata - Who has time to write tests? This is a revolutionary tool to make them write themselves.
- Selenium WebDriver - Ruby bindings for WebDriver.
- Watir - Web application testing in Ruby.
- Knapsack - Optimal test suite parallelisation across CI nodes for RSpec, Cucumber, Minitest, Spinach and Turnip.
- Bacon - A small RSpec clone.
- faker - A library for generating fake data such as names, addresses, and phone numbers.
- rspec-tracer - Specs dependency analyzer, flaky tests detector, tests accelerator, and coverage reporter for RSpec
-
Third-party APIs
- Ably - Ruby library for realtime communication over Ably.
- Buffer - Buffer API Ruby Library
- discordrb - An implementation of the Discord API.
- Dropbox - Ruby client for Dropbox API v2.
- fb_graph2 - A full-stack Facebook Graph API wrapper.
- flickr - A Ruby interface to the Flickr API.
- gitlab - Ruby wrapper and CLI for the GitLab API.
- google-api-ads-ruby - Google Adwords Ruby client
- gmail - A Rubyesque interface to Gmail, with all the tools you'll need.
- hipchat-rb - HipChat HTTP API Wrapper in Ruby with Capistrano hooks.
- itunes_store_transporter - Ruby wrapper around Apple's iTMSTransporter program.
- linkedin - Provides an easy-to-use wrapper for LinkedIn's REST APIs.
- Octokit - Ruby toolkit for the GitHub API.
- Pusher - Ruby server library for the Pusher API.
- ruby-gmail - A Rubyesque interface to Gmail.
- ruby-trello - Implementation of the Trello API for Ruby.
- simple-slack-bot - You can easily make Slack Bot.
- Slack Notifier - A simple wrapper for posting to Slack channels.
- Slack ruby gem - A Ruby wrapper for the Slack API.
- soundcloud-ruby - Official SoundCloud API Wrapper for Ruby.
- terjira - A command-line power tool for Jira.
- tweetstream - A simple library for consuming Twitter's Streaming API.
- twilio-ruby - A module for using the Twilio REST API and generating valid TwiML.
- whatsapp-sdk - Ruby client for the Whatsapp API.
- wikipedia - Ruby client for the Wikipedia API.
- Yt - An object-oriented Ruby client for YouTube API V3.
- instagram-ruby-gem - The official gem for the Instagram REST and Search APIs.
- Notion Ruby Client - A Ruby wrapper for the Notion API.
- t - A command-line power tool for Twitter.
- twitter - A Ruby interface to the Twitter API.
- Restforce - A Ruby client for the Salesforce REST api.
-
Video
- Streamio FFMPEG - Simple yet powerful wrapper around the ffmpeg command for reading metadata and transcoding movies.
- VideoInfo - Get video info from Dailymotion, Vimeo, Wistia, and YouTube URLs.
- Video Transcoding - Tools to transcode, inspect and convert videos.
-
View components
- Cells - View Components for Rails.
- Komponent - An opinionated way of organizing front-end code in Rails, based on components.
- ViewComponent - View components for Rails.
- Phlex - A framework for building object-oriented views in Ruby.
-
View helpers
- active_link_to - View helper to manage "active" state of a link.
- auto_html - Rails extension for transforming URLs to appropriate resource (image, link, YouTube, Vimeo video...).
- gon - If you need to send some data to your js files and you don't want to do this with long way through views and parsing - use gon.
- PluggableJs - Page-specific javascript for Rails applications with the ability of passing data from a controller.
- Bh - Bootstrap Helpers for Ruby.
- render_async - Render partials to your views asynchronously and increase load performance of your pages.
-
Web Crawling
- LinkThumbnailer - Ruby gem that generates thumbnail images and videos from a given URL. Much like popular social website with link preview.
- Kimurai - A modern web scraping framework written in Ruby which works out of box with Headless Chromium/Firefox, PhantomJS, or simple HTTP requests and allows to scrape and interact with JavaScript rendered websites.
- Mechanize - Mechanize is a ruby library that makes automated web interaction easy.
- MetaInspector - Ruby gem for web scraping purposes.
- Spidr - A versatile Ruby web spidering library that can spider a site, multiple domains, certain links or infinitely. Spidr is designed to be fast and easy to use.
- Upton - A batteries-included framework for easy web-scraping.
- Wombat - Web scraper with an elegant DSL that parses structured data from web pages.
-
Web Frameworks
- Cuba - A microframework for web development.
- Hanami - It aims to bring back Object Oriented Programming to web development, leveraging on a stable API, a minimal DSL, and plain objects.
- Hyperstack - A Complete Isomorphic Ruby Framework using React and Opal.
- Padrino - A full-stack ruby framework built upon Sinatra.
- Pakyow - A framework for building modern web-apps in Ruby. It helps you build working software faster with a development process that remains friendly to both designers and developers.
- Ramaze - A simple, light and modular open-source web application framework written in Ruby.
- Roda - A routing tree web framework.
- Scorched - Light-weight, inheritable and composable web framework, inspired by Sinatra.
- Sinatra - Classy web-development dressed in a DSL.
- Camping - A web microframework which consistently stays at less than 4kB of code.
- Hobbit - A minimalistic microframework built on top of Rack.
- Rack::App - Bare bone minimalistic framework for building rack apps.
- Trailblazer - Trailblazer is a thin layer on top of Rails. It gently enforces encapsulation, an intuitive code structure and gives you an object-oriented architecture.
- Syro - Simple router for web applications.
- Cuba - A microframework for web development.
- Hanami - It aims to bring back Object Oriented Programming to web development, leveraging on a stable API, a minimal DSL, and plain objects.
- Scorched - Light-weight, inheritable and composable web framework, inspired by Sinatra.
-
Web Servers
- Phusion Passenger - Fast and robust web server and application server.
- Rack - A common Ruby web server interface. By itself, it's just a specification and utility library, but all Ruby web servers implement this interface.
- Unicorn - Rack HTTP server for fast clients and Unix.
- Agoo - A high performance HTTP server for Ruby that includes GraphQL and WebSocket support.
- Falcon - A high-performance web server for Ruby, supporting HTTP/1, HTTP/2 and TLS.
- Iodine - An non-blocking HTTP and Websocket web server optimized for Linux/BDS/macOS and Ruby MRI.
- Puma - A modern, concurrent web server for Ruby.
- Thin - Tiny, fast & funny HTTP server.
- TorqueBox - A Ruby application server built on JBoss AS7 and JRuby.
- Unicorn - Rack HTTP server for fast clients and Unix.
-
WebSocket
Programming Languages
Categories
Testing
49
ORM/ODM Extensions
42
Third-party APIs
31
API Builder and Discovery
24
Scientific
23
Database Tools
20
CMS
20
Date and Time Processing
18
DevOps Tools
18
Queues and Messaging
18
Web Frameworks
17
HTTP Clients and tools
17
Code Analysis and Metrics
17
Email
16
Core Extensions
16
Documentation
15
CLI Builder
15
Search
15
CLI Utilities
14
Discover
14
Authentication and OAuth
13
Security
13
Natural Language Processing
12
ORM/ODM
12
Machine Learning
12
Assets
12
E-Commerce and Payments
11
Database Drivers
11
Profiler and Optimization
11
Configuration
11
Web Servers
10
Internationalization
10
PDF
10
Error Handling
10
Caching
10
Logging
10
Package Management
10
Admin Interface
9
Git Tools
9
Image Processing
8
Authorization
8
Environment Management
8
Data Processing and ETL
8
HTML/XML Parsing
8
Social Networking
8
Business logic
8
Scheduling
8
State Machines
8
Static Site Generation
8
Process Management and Monitoring
7
Mobile Development
7
Code Formatting
7
Form Builder
7
Country Data
7
Debugging Tools
7
IRB
7
File Upload
7
Web Crawling
7
Services and Apps
7
Data Visualization
7
GUI
6
Optimizations
6
Analytics
6
Coding Style Guides
6
Feature Flippers and A/B Testing
6
Geolocation
6
View helpers
6
Implementations/Compilers
6
Markdown Processors
6
Template Engine
6
Rails Application Generators
6
RSS
5
WebSocket
5
Concurrency and Parallelism
5
Captchas and anti-spam
5
Pagination
5
Game Development and Graphics
5
Automation
5
Performance Monitoring
5
File System Listener
5
Encryption
4
Gem Generators
4
Breadcrumbs
4
Cloud
4
Boilerplates & UI Kits
4
View components
4
Spreadsheets and Documents
4
Ebook
4
GraphQL
4
Decorators
4
Notifications
4
SEO
4
Gem Servers
4
Video
3
Networking
3
Dashboards
3
Cryptocurrencies and Blockchains
3
Music and Sound
3
Serverless
3
Robotics
3
Diff
3
Money
3
CRM
2
Processes
2
Event Sourcing
2
Measurements
2
Code Loaders
1
Code Highlighting
1
Presentation Programs
1
QR
1
Sub Categories
Keywords
ruby
299
rails
114
activerecord
32
gem
20
ruby-on-rails
20
api
14
ruby-gem
12
http
11
rubygems
11
rack
11
redis
10
rspec
10
database
10
security
9
postgresql
9
rubyml
9
sinatra
9
machine-learning
9
testing
9
performance
8
automation
8
jruby
8
scheduler
7
json
7
cli
7
authentication
7
terminal
7
dsl
6
error-monitoring
6
authorization
6
sql
6
elasticsearch
6
server
6
rubygem
6
sidekiq
5
search
5
background-jobs
5
parser
5
web
5
analytics
5
c
5
javascript
5
rails-engine
5
markdown
5
security-tools
5
static-analysis
5
graphql
5
pdf
5
hanami
4
testing-tools
4