Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/alehander92/bencoder
a library to handle bencode in elixir
https://github.com/alehander92/bencoder
Last synced: 3 months ago
JSON representation
a library to handle bencode in elixir
- Host: GitHub
- URL: https://github.com/alehander92/bencoder
- Owner: alehander92
- License: mit
- Created: 2014-12-27T01:16:44.000Z (about 10 years ago)
- Default Branch: master
- Last Pushed: 2015-05-12T22:55:31.000Z (almost 10 years ago)
- Last Synced: 2024-09-15T10:06:42.941Z (5 months ago)
- Language: Elixir
- Size: 204 KB
- Stars: 4
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- freaking_awesome_elixir - Elixir - bencode in Elixir. (Text and Numbers)
README
Bencoder
========[![Build Status](https://travis-ci.org/alehander42/bencoder.svg)](https://travis-ci.org/alehander42/bencoder)
An elixir bencoding package
It's intended for the [`yolandi`](https://github.com/alehander42/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:
```elixir
Bencoder.encode(2) # "i2e"
Bencoder.encode([4, 202]) # "li4ei202ee"
``````elixir
Bencoder.decode("4:life") # "life"
Bencoder.decode("d4:lifei42ee") # %{"life" => 42}
Bencoder.decode("i42e") # 42
Bencoder.decode("l1:~e") # ["~"]
```## Install
Add to your mix.exs deps
```elixir
{:bencoder, "~> 0.0.7"}
```## Copyright
Copyright (c) 2014 Alexander Ivanov. See [LICENSE](LICENSE) for further details