Go to file
Antoine Langlois c5b91bd02a
wip
2024-04-26 09:37:22 +02:00
cli wip 2024-04-26 09:37:22 +02:00
gui initial commit 2024-03-31 00:36:57 +01:00
lib wip 2024-04-26 09:37:22 +02:00
.envrc initial commit 2024-03-31 00:36:57 +01:00
.gitignore initial commit 2024-03-31 00:36:57 +01:00
Cargo.lock wip 2024-04-26 09:37:22 +02:00
Cargo.toml wip 2024-04-26 09:37:22 +02:00
LICENSE chore: add license 2024-03-31 00:55:35 +01:00
README.md wip 2024-04-26 09:37:22 +02:00
flake.lock feat: add v1 torrent parsing 2024-04-03 11:42:22 +02:00
flake.nix feat: add v1 torrent parsing 2024-04-03 11:42:22 +02:00

README.md

BitTorrent-Rust

BitTorrent-Rust is a fully fledged BitTorrent tool suite. A library supporting all BEP (WIP), a GUI (TODO) for desktop usage, a CLI/TUI (WIP) and a web ui for containerised environment.

Why another GUI/CLI/TUI/WebUI/library ?

Why not 😁. Joke aside, I feel like some users might want an AIO BitTorrent environment. My goal is to create a modern stack.

Features

Library

Everything under a BEP MUST be supported. Non standard fields for .torrent are also mapped when encountered and they need a special treatement (like dates).

To start developing with it:

cargo add bittorrent-rs

[!WARNING] The library is a work in progress. Please refer to the implemented section below. The library's documentation is also a work in progress.

Implemented

  • BEP 0003 - V1 specification
    • .torrent parsing
    • Tracker request
    • Peer download
  • BEP 0004 - Reserved bit allocation (tested & verified)
  • BEP 0005 - DHT protocol
  • BEP 0020 - Peer ID convention