Liasis - yet another bittorrent client

Liasis is a bittorrent client written entirely in Python. It features a client-server architecture, being split into a daemon which acts as a bittorrent peer, and several clients used to monitor and change the daemon's status.
Communication between the two components is possible over either unix sockets or TCP connections, though at this time no encryption or authentication of control connections has been implemented.
Liasis has been written entirely by Sebastian Hagen and is licensed under the GNU GPL.
The current version of liasis is available from its git repository, available at http://git.memespace.net/git/liasis.git/ and git://github.com/sh01/liasis.git.

primary design goals:

  • Correctness: Any protocol implemented in liasis should conform to the relevant specifications.
  • Stability: liasis shouldn't stop working because of bugs.
  • Performance: liasis shouldn't need excessive amounts of memory or cpu time.
  • Maintainability: The code should be understandable and changable with low effort.
  • Extensibility: A clean design should allow for simple implementation of additional features.

The communication protocol used between liasis-servers and liasis-clients is language-agnostic, and either side can be implemented with moderate effort in any turing-complete language with support for the relevant socket types.

Liasis features include:

Liasis has been written from scratch based on publicly available descriptions of the BT protocol. It is not derived from the official bittorrent client, and does not contain any code from that project.

Liasis is currently neither feature-complete nor particularly user-friendly or fully documented.