friendly_digest: Makes passing IDs around less error prone and user-friendly


Avoids mistakes like 0 vs O, 1 vs L

gem install ‘friendly_digest’

require 'friendly_digest'

irb> FriendlyDigest.new(12345)
  => "4AD"

irb> FriendlyDigest.decode('4ad')
  => 12345

New! Parity flag


Adds a 1 character checksum to detect input mistakes.

irb> FriendlyDigest.new(12345, true)
  => "4ADM"

irb> FriendlyDigest.decode('4adm', true)
  => 12345

irb> FriendlyDigest.decode('4abm', true)
FriendlyDigest::InvalidInputException: Invalid input

Contact the author


Andrew Snow <[email protected]> Andys^ on irc.freenode.net @andy_snow on the twitter