Bencoder

Build Status

An elixir bencoding package

It's intended for the yolandi torrent client

Beware

That's a learning exercise for me in elixir/erlang, so the code is still not clean and non idiomatic

Bencode format supports 4 types of data: numbers, dictionaries and lists. Bencoder uses elixir's Integer, Map, List and BitString.

Examples:

 Bencoder.encode(2) # "i2e"
 Bencoder.encode([4, 202]) # "li4ei202ee"
 Bencoder.decode("4:life") # "life"
 Bencoder.decode("d4:lifei42ee") # %{"life" => 42}