Thanks to visit codestin.com
Credit goes to lib.rs

#bittorrent #bittorrent-client

bin+lib rdest

rdest is simple BitTorrent client, currently supporting BEP3 specification

1 unstable release

0.1.0 May 2, 2021

#27 in #bittorrent-client

MIT/Apache

3.5MB
4K SLoC

Rust is simple BitTorrent client, currently supporting BEP3 specification.

Example

use rdest::{Metainfo, Session};
use std::path::Path;

let path = Path::new("ubuntu-20.04.2.0-desktop-amd64.iso.torrent");
let torrent_file = Metainfo::from_file(path).unwrap();
let peer_id = b"AAAAABBBBBCCCCCDDDDD";

let mut session = Session::new(torrent_file, *peer_id);
session.run().await;

rdest

rdest is simple BitTorrent client, currently supporting BEP3 specification.

Examples

Running rdest from command line.

rdest get ubuntu-20.04.2.0-desktop-amd64.iso.torrent

Running rdest code.

use rdest::{Metainfo, Session};
use rdest::peer_id;
use std::path::Path;

#[tokio::main]
async fn main() {
    let path = Path::new("ubuntu-20.04.2.0-desktop-amd64.iso.torrent");
    let torrent_file = Metainfo::from_file(path).unwrap();

    let mut session = Session::new(torrent_file, peer_id::generate());
    session.run().await;
}

References

Dependencies

~11–16MB
~261K SLoC