OCaml BitTorrent library and client
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
examples
lib
otorrent
.gitignore
.merlin
.ocp-indent
CHANGES.md
LICENCE
Makefile
README.md
TODO.md
_tags
bt.mlpack

README.md

ocaml-bt

OCaml-BT is a small BitTorrent library and client written in OCaml. It uses Lwt for concurrency.

This is a preliminary release.

Installation

The easiest way is to use OPAM.

opam install bt

Alternatively, clone from git and install manually:

cd ~/tmp
git clone https://github.com/nojb/ocaml-bt
cd ocaml-bt
make
make install

Either way the end-result will be a OCaml library (findlib name: bt) and a executable otorrent.

Usage

Right now the only supported way to download torrents is via the use of magnet links, but other ways will hopefully be added soon. For example, the following will download the "Ubuntu 13.10 Desktop Live ISO amd64" torrent to your current working directory.

otorrent "magnet:?xt=urn:btih:e3811b9539cacff680e418124272177c47477157&dn=Ubuntu+13.10+Desktop+Live+ISO+amd64&tr=udp%3A//tracker.openbittorrent.com%3A80&tr=udp%3A//tracker.publicbt.com%3A80&tr=udp%3A//tracker.istole.it%3A6969&tr=udp%3A//tracker.ccc.de%3A80&tr=udp%3A//open.demonii.com%3A1337"

TODO

  • DHT - DONE
  • uTP
  • Fast Resume
  • Encryption - DONE
  • PEX - DONE
  • LPD
  • UPnP
  • NAT-PMP
  • SOCKS

Comments

Comments, bug reports and feature requests are very welcome: n.oje.bar@gmail.com.