/bittorrentj

A BitTorrent client library in Java

Primary LanguageJavaMIT LicenseMIT

bittorrentj

A BitTorrent client library in Java.

Architecture

Say something about threading model, message passing etc, the different classes, e.g. put in class diagram.

Features

The following bittorrent enhancement proposals (BEPs) are supported

  • BEP3: BitTorrent Protocol Specification
  • BEP5: Distributed Hash Table (todo 5)
  • BEP6: Fast Extension (todo)
  • BEP9: Metadata Exchange (todo 1)
  • BEP10: Extension Protocol, with extension API (see below)
  • BEP15: UDP Tracker Protocol (todo 4)
  • BEP23: Multitracker Metadata Extension (todo 2)
  • BEP23: Compact Peer List (todo 3)
  • BEP43: Cryptocurrency Payment Protocol (todo)

Extension API

The library was written in part specifically to facilitate deep and powerful extensions which could could be as tightly coupled with the core client as necessary.

Install

Usage

Contribute

Shoot me an email at bedeho.mender@gmail.com