mirror of
https://github.com/sdogruyol/awesome-ruby.git
synced 2025-03-10 16:55:55 -04:00
385 lines
8.3 KiB
Markdown
385 lines
8.3 KiB
Markdown
# Awesome Ruby
|
||
|
||
A curated list of awesome Ruby frameworks, libraries and resources. Inspired by [awesome-php](https://github.com/ziadoz/awesome-php) & [awesome-python](https://github.com/vinta/awesome-python).
|
||
|
||
- [Awesome Ruby](#awesome-ruby)
|
||
- [Environment Management](#environment-management)
|
||
- [Package Management](#package-management)
|
||
- [Distribution](#distribution)
|
||
- [Files](#files)
|
||
- [Date and Time](#date-and-time)
|
||
- [Text Processing](#text-processing)
|
||
- [Natural Language Processing](#natural-language-processing)
|
||
- [Documentation](#documentation)
|
||
- [Configuration](#configuration)
|
||
- [Command-line Tools](#command-line-tools)
|
||
- [Imagery](#imagery)
|
||
- [Audio](#audio)
|
||
- [Video](#video)
|
||
- [Geolocation](#geolocation)
|
||
- [HTTP](#http)
|
||
- [Database](#database)
|
||
- [Database Drivers](#database-drivers)
|
||
- [ORM](#orm)
|
||
- [Web Frameworks](#web-frameworks)
|
||
- [CMS](#cms)
|
||
- [RESTful API](#restful-api)
|
||
- [Authentication and OAuth](#authentication-and-oauth)
|
||
- [Template Engine](#template-engine)
|
||
- [Queue](#queue)
|
||
- [Search](#search)
|
||
- [Asset Management](#asset-management)
|
||
- [Caching](#caching)
|
||
- [Email](#email)
|
||
- [Internationalization](#internationalization)
|
||
- [URL Manipulation](#url-manipulation)
|
||
- [HTML Manipulation](#html-manipulation)
|
||
- [Web Crawling](#web-crawling)
|
||
- [Web Content Extracting](#web-content-extracting)
|
||
- [Downloader](#downloader)
|
||
- [Forms](#forms)
|
||
- [Data Validation](#data-validation)
|
||
- [Anti-spam](#anti-spam)
|
||
- [Tagging](#tagging)
|
||
- [Build Tools](#build-tools)
|
||
- [Admin Panels](#admin-panels)
|
||
- [Processes and Threads](#processes-and-threads)
|
||
- [Networking](#networking)
|
||
- [WebSocket](#websocket)
|
||
- [Cryptography](#cryptography)
|
||
- [GUI](#gui)
|
||
- [Game Development](#game-development)
|
||
- [Logging](#logging)
|
||
- [Testing](#testing)
|
||
- [Code Analysis and Linter](#code-analysis-and-linter)
|
||
- [Debugging Tools](#debugging-tools)
|
||
- [Science and Data Analysis](#science-and-data-analysis)
|
||
- [Data Visualization](#data-visualization)
|
||
- [Machine Learning](#machine-learning)
|
||
- [Functional Programming](#functional-programming)
|
||
- [MapReduce](#mapreduce)
|
||
- [Third-party APIs](#third-party-apis)
|
||
- [DevOps Tools](#devops-tools)
|
||
- [Foreign Function Interface](#foreign-function-interface)
|
||
- [High Performance](#high-performance)
|
||
- [Algorithms and Design Patterns](#algorithms-and-design-patterns)
|
||
- [Miscellaneous](#miscellaneous)
|
||
- [Editor Plugins](#editor-plugins)
|
||
- [Resources](#resources)
|
||
- [Websites](#websites)
|
||
- [Weekly](#weekly)
|
||
- [Twitter](#twitter)
|
||
|
||
## Environment Management
|
||
|
||
*Libraries for Ruby version and environment management.*
|
||
* [rvm](https://rvm.io/) - Ruby Version Manager
|
||
* [rbenv](http://rbenv.org/) - Groom your app’s Ruby environment
|
||
|
||
## Package Management
|
||
|
||
*Libraries for package and dependency management.*
|
||
* [RubyGems](https://rubygems.org/) - RubyGems is a package manager for the Ruby programming language that provides a standard format for distributing Ruby programs and libraries
|
||
|
||
## Distribution
|
||
|
||
*Libraries to create packaged executables for release distribution.*
|
||
|
||
## Files
|
||
|
||
*Libraries for file manipulation and MIME type detection.*
|
||
|
||
## Date and Time
|
||
|
||
*Libraries for working with dates and times.*
|
||
|
||
## Text Processing
|
||
|
||
*Libraries for parsing and manipulating texts.*
|
||
|
||
* General
|
||
|
||
* Specific Formats
|
||
|
||
* Parser
|
||
|
||
## Natural Language Processing
|
||
|
||
*Libraries for working with human languages.*
|
||
|
||
## Documentation
|
||
|
||
*Libraries for generating project documentation.*
|
||
|
||
## Configuration
|
||
|
||
*Libraries for storing configuration options.*
|
||
|
||
## Command-line Tools
|
||
|
||
*Libraries for building command-line application.*
|
||
|
||
* Command-line Application Development
|
||
|
||
* Workflow Tools
|
||
|
||
## Imagery
|
||
|
||
*Libraries for manipulating images.*
|
||
|
||
## Audio
|
||
|
||
*Libraries for manipulating audio.*
|
||
|
||
## Video
|
||
|
||
*Libraries for manipulating video and GIFs.*
|
||
|
||
## Geolocation
|
||
|
||
*Libraries for geocoding addresses and working with latitudes and longitudes.*
|
||
|
||
## HTTP
|
||
|
||
*Libraries for working with HTTP.*
|
||
|
||
## Database Drivers
|
||
|
||
*Libraties for connecting and operating databases.*
|
||
|
||
* Relational Databases
|
||
|
||
* NoSQL Databases
|
||
|
||
## ORM
|
||
|
||
*Libraries that implement Object-Relational Mapping or datamapping techniques.*
|
||
|
||
* Relational Databases
|
||
|
||
* NoSQL Databases
|
||
|
||
## Web Frameworks
|
||
|
||
*Web development frameworks.*
|
||
|
||
* [Ruby On Rails](http://rubyonrails.org/) - Ruby on Rails is a full-stack web framework optimized for programmer happiness and sustainable productivity
|
||
* [Sinatra](http://www.sinatrarb.com/) - Sinatra is a DSL for quickly creating web applications in Ruby with minimal effort.
|
||
* [Padrino](http://www.padrinorb.com/) - The Godfather of Sinatra provides a full-stack agnostic framework on top of Sinatra
|
||
* [Cramp](http://cramp.in/) - Cramp is a fully asynchronous real-time web application framework in Ruby
|
||
|
||
## CMS
|
||
|
||
*Content management systems*
|
||
|
||
## RESTful API
|
||
|
||
*Libraries for developing RESTful APIs.*
|
||
|
||
## Authentication and OAuth
|
||
|
||
*Libraries for implementing authentications schemes.*
|
||
|
||
## Template Engine
|
||
|
||
*Libraries and tools for templating and lexing.*
|
||
|
||
## Queue
|
||
|
||
*Libraries for working with event and task queues.*
|
||
|
||
## Search
|
||
|
||
*Libraries and software for indexing and performing search queries on data.*
|
||
|
||
## Asset Management
|
||
|
||
*Tools for managing, compressing and minifying website assets.*
|
||
|
||
## Caching
|
||
|
||
*Libraries for caching data.*
|
||
|
||
## Email
|
||
|
||
*Libraries for sending and parsing email.*
|
||
|
||
## Internationalization
|
||
|
||
*Libraries for woking with i18n.*
|
||
|
||
## URL Manipulation
|
||
|
||
*Libraries for parsing URLs.*
|
||
|
||
## HTML Manipulation
|
||
|
||
*Libraries for working with HTML and XML.*
|
||
|
||
## Web Crawling
|
||
|
||
*Libraries for scraping websites.*
|
||
|
||
## Web Content Extracting
|
||
|
||
*Libraries for extracting web contents.*
|
||
|
||
## Downloader
|
||
|
||
*Libraries for downloading.*
|
||
|
||
## Forms
|
||
|
||
*Libraries for working with forms.*
|
||
|
||
## Data Validation
|
||
|
||
*Libraries for validating data. Used for forms in many cases.*
|
||
|
||
## Anti-spam
|
||
|
||
*Libraries for fighting spam.*
|
||
|
||
## Tagging
|
||
|
||
*Libraries for tagging items.*
|
||
|
||
## Build Tools
|
||
|
||
*Compile software from source code.*
|
||
|
||
## Admin Panels
|
||
|
||
*Libraries for administrative interfaces.*
|
||
|
||
## Processes and Threads
|
||
|
||
*Libraries for woking with processes or threads*
|
||
|
||
## Networking
|
||
|
||
*Libraries for network programming.*
|
||
|
||
## WebSocket
|
||
|
||
*Libraries for woking with WebSocket.*
|
||
|
||
## Cryptography
|
||
|
||
|
||
## GUI
|
||
|
||
*Libraries for working with graphical user interface applications.*
|
||
|
||
## Game Development
|
||
|
||
*Awesome game development libraries.*
|
||
|
||
## Logging
|
||
|
||
*Libraries for generating and working with log files.*
|
||
|
||
|
||
## Testing
|
||
|
||
*Libraries for testing codebases and generating test data.*
|
||
|
||
* Testing Frameworks
|
||
* [RSpec](http://rspec.info/) - BDD for Ruby
|
||
* [MiniTest](https://github.com/seattlerb/minitest) - minitest provides a complete suite of testing facilities supporting TDD, BDD, mocking, and benchmarking
|
||
* Mock
|
||
* [RSpec-mocks](https://github.com/rspec/rspec-mocks) - RSpec's 'test double' framework, with support for stubbing and mocking
|
||
* [Mocha](http://gofreerange.com/mocha/docs/) - Mocking and stubbing library with JMock/SchMock syntax, which allows mocking and stubbing of methods on real (non-mock) classes.
|
||
* [FlexMock](https://github.com/jimweirich/flexmock) - Flexible mocking for Ruby testing
|
||
* Fake Data
|
||
|
||
* Code Coverage
|
||
|
||
* Load Testing
|
||
|
||
* Error Handler
|
||
|
||
|
||
## Code Analysis and Linter
|
||
|
||
*Libraries and tools for analysing, parsing and manipulation codebases.*
|
||
|
||
|
||
## Debugging Tools
|
||
|
||
*Libraries for debugging and developing.*
|
||
|
||
|
||
## Science and Data Analysis
|
||
|
||
*Libraries for scientific computing and data analyzing.*
|
||
|
||
## Data Visualization
|
||
|
||
*Libraries for visualizing data.*
|
||
|
||
|
||
## Machine Learning
|
||
|
||
*Libraries for Machine Learning.*
|
||
|
||
|
||
## Functional Programming
|
||
|
||
|
||
## MapReduce
|
||
|
||
*Framworks and libraries for MapReduce.*
|
||
|
||
## Third-party APIs
|
||
|
||
*Libraries for accessing third party APIs.*
|
||
|
||
|
||
## DevOps Tools
|
||
|
||
*Software and libraries for DevOps.*
|
||
|
||
|
||
## Foreign Function Interface
|
||
|
||
*Libraries for providing foreign function interface.*
|
||
|
||
|
||
## High Performance
|
||
|
||
*Libraries for making Ruby faster.*
|
||
|
||
|
||
## Algorithms and Design Patterns
|
||
|
||
*Collections of algorithms and design patterns.*
|
||
|
||
|
||
## Miscellaneous
|
||
|
||
*Useful libraries or tools that don't fit in the categories above.*
|
||
|
||
|
||
## Editor Plugins
|
||
|
||
*Plugins for various editors.*
|
||
|
||
|
||
# Resources
|
||
|
||
Where to discover new Ruby libraries.
|
||
|
||
## Websites
|
||
|
||
|
||
|
||
## Weekly
|
||
|
||
|
||
## Twitter
|
||
|
||
|
||
# Contributing
|
||
|
||
Your contributions are always welcome!
|