Huffify

Huffify is a Ruby gem that provides functionality to encode and decode text data using Huffman encoding, a lossless data compression algorithm. Huffman encoding efficiently compresses data by assigning shorter codes to more frequent symbols and longer codes to less frequent symbols.

Installation

To install the gem, add this line to your application's Gemfile:

gem 'huffify'

Then execute:

bundle install

Or install it yourself as:

gem install huffify

Usage

Basic Encoding and Decoding

Here's how you can use the gem to encode and decode a string using Huffman encoding:

require 'huffify'
text = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."

result = Huffify::encode(text)

decoded_text = Huffify::decode(result[:encoded_text], result[:huffman_tree])

decoded_text == text  # true

License

The gem is available as open source under the terms of the MIT License.