Cucumber is a tool for running automated tests written in plain language. It's designed to support a Behaviour Driven Development (BDD) software development workflow.
Net::IMAP implements Internet Message Access Protocol (IMAP) client functionality. The protocol is described in IMAP.
This package containse the JSON parsing tools shared between a number of providers in the fog gem. fog is a Ruby cloud services library.
Ruby Bindings for the GNU LibIDN library, an implementation of the Stringprep, Punycode and IDNA specifications. These are used to encode and decode internationalized domain + names according to the IDNA2003 specifications.
Included are the most important parts of the Stringprep, Punycode and IDNA APIs like performing Stringprep processings, encoding to and decoding from Punycode strings and converting entire domain names to and from the ACE encoded form.
Bio::Kseq provides ruby bindings to the kseq.h FASTA and FASTQ parsing code. It provides a fast iterator over sequences and their quality scores.
This package allows you to test FTP implementations in ruby. It is a minimal single-client FTP server that can be bound to any arbitrary port on localhost.
Zeitwerk implements constant autoloading with Ruby semantics. Each gem and application may have their own independent autoloader, with its own configuration, inflector, and logger. Supports autoloading, reloading, and eager loading.
Sanitize is a whitelist-based HTML and CSS sanitizer. Given a list of acceptable elements, attributes, and CSS properties, Sanitize will remove all unacceptable HTML and/or CSS from a string.
Maxitest is a wrapper around Minitest with extra functionality such as timeouts, an mtest executable that can run tests by line number, support for interrupted tests, better backtraces, and more.
The Polyglot library allows a Ruby module to register a loader for the file type associated with a filename extension, and it augments require to find and load matching files.
HighLine provides a high-level IO library that provides validation, type conversion, and more for command-line interfaces. HighLine also includes a menu system for providing multiple options to the user.
This library provides functionality to send Internet mail via SMTP, the Simple Mail Transfer Protocol. The SMTP protocol specification is known as RFC2821.
Data URIs allow resources to be embedded inside a URI. The URI::Data class provides support for parsing these URIs using the normal URI.parse method.
Parallel allows you to run any code in parallel Processes (to use all CPUs) or Threads(to speedup blocking operations). It is best suited for map-reduce or e.g. parallel downloads/uploads.
Standard is a port of StandardJS. Like StandardJS, it aims to save time in the following ways:
No configuration.
Automatically format code.
Catch style issues and programmer errors early.
Diff::LCS computes the difference between two Enumerable sequences using the McIlroy-Hunt longest common subsequence (LCS) algorithm. It includes utilities to create a simple HTML diff output format and a standard diff-like tool.
This library provides a high-level API that wraps the ZeroMQ networking library using the Ruby foreign function interface (FFI). It is a pure Ruby wrapper, hence is compatible with any Ruby runtime that has support for FFI.
CiteProc is a citation processor interface and citation data API based on the CSL specifications. To actually process citations, a dedicated processor engine is required: a pure Ruby engine is available in the citeproc-ruby gem.
This package implements a functionality of pretty-print JSON with more formatting options than the built-in JSON.pretty_generate, such as keeping arrays and objects on a single line when possible, aligning or sorting object keys, customizing numeric representation, and more.
Kramdown is a library for parsing and converting a superset of Markdown. It is completely written in Ruby, supports standard Markdown (with some minor modifications) and various extensions that have been made popular by the PHP Markdown Extra package and Maruku.
TomParse is a TomDoc parser for Ruby. It takes a code comment as input and parses it into a convenient object-oriented structure in accordance with the TomDoc standard. See TomDoc for more information about the TomDoc format.
Sorcerer generates Ruby code from a Ripper-like abstract syntax tree (i.e. S-Expressions). Sorcerer is targeted mainly at small snippets of Ruby code, expressible in a single line. Longer examples may be re-sourced, but they will be rendered in a single-line format.
Net::SFTP is a pure Ruby implementation of the SFTP protocol (specifically, versions 1 through 6 of the SFTP protocol). Note that this is the “Secure File Transfer Protocol”, typically run over an SSH connection, and has nothing to do with the FTP protocol.
Mustache is a framework-agnostic way to render logic-free views. Think of Mustache as a replacement for your views. Instead of views consisting of ERB or HAML with random helpers and arbitrary logic, your views are broken into two parts: a Ruby class and an HTML template.