ChunkyPNG is a pure Ruby library that can read and write Portable Network Graphics (PNG) images without depending on an external image library. It tries to be memory efficient and reasonably fast. It has features such as:
Decoding support for any image that the PNG standard allows. This includes all standard color modes, all bit depths, all transparency, and interlacing and filtering options.
Encoding support for images of all color modes (true color, grayscale, and indexed) and transparency for all these color modes. The best color mode is chosen automatically, based on the amount of used colors.
Read/write access to the image's pixels.
Read/write access to all image metadata that is stored in chunks.
Memory efficiency:
fixnumare used, i.e. 4 or 8 bytes of memory per pixel, depending on the hardware).Performance: ChunkyPNG is reasonably fast for Ruby standards, by only using integer math and a highly optimized saving routine.
Interoperability with RMagick.
ChunkyPNG is vulnerable to decompression bombs and can run out of memory when loading a specifically crafted PNG file. This is hard to fix in pure Ruby. Deal with untrusted images in a separate process, e.g., by using fork or a background processing library.
Knows about MRI, Rubinius, JRuby, MagLev and MacRuby.
Documentation at https://melpa.org/#/ruby-tools
This gem provides tables support for Prawn.
This Ruby library integrates SassC-Ruby into Rails.
The ruby_parser (RP) package provides a Ruby parser written in pure Ruby. It outputs S-expressions which can be manipulated and converted back to Ruby via the ruby2ruby library.
ruby_engine provides an RubyEngine class that can be used to check which implementation of Ruby is in use. It can provide the interpreter name and provides query methods such as RubyEngine.mri?.
minitest-rg changes the colour of the output from Minitest.
This package provides a Ruby grammar for the Tree-sitter library.
This package provides a plugin specification for Ruby linter and formatter rulesets.
The thread_safe library provides thread-safe collections and utilities for Ruby.
The Listen gem listens to file modifications and notifies you about the changes.
Rspec-mocks provides RSpec's "test double" framework, with support for stubbing and mocking.
Rspec-mocks provides RSpec's "test double" framework, with support for stubbing and mocking.
This package provides a set of parsers for Accept and Accept-Language HTTP headers.
This package provides a set of parsers for Accept and Accept-Language HTTP headers.
This package provides a Jekyll plugin to generate an Atom feed of your Jekyll posts.
Sentry-Core provides a gem that provides a client interface for the Sentry error logger.
This package provides an automated way to track, and then re-run failed RSpec tests.
Action Cable integrates WebSockets with Rails applications. Through WebSockets it allows for real-time features in web applications.
This module adds support for the TomDoc documentation format to YARD, a documentation generation tool for Ruby.
Multicodecs is the ruby implementation of multiformats/multicodec, a canonical table of of codecs used by various multiformats.
This package provides a Ruby library to perform different operations with permutations of sequences, such as strings and arrays.
Ruby/ProgressBar is an flexible text progress bar library for Ruby. The output can be customized with a formatting system.