Crates.io | rusty_torrent |
lib.rs | rusty_torrent |
version | 0.9.3 |
source | src |
created_at | 2023-08-27 13:25:06.63913 |
updated_at | 2023-08-27 14:44:13.278334 |
description | A BitTorrent client implemented in Rust that allows you to interact with the BitTorrent protocol and download torrents. |
homepage | |
repository | https://github.com/arlofilley/rusty_torrent |
max_upload_size | |
id | 956080 |
size | 87,239 |
A BitTorrent client implemented in Rust that allows you to interact with the BitTorrent protocol and download torrents.
This BitTorrent client is designed to provide a simple and functional implementation of the BitTorrent protocol. It supports downloading torrents and interacting with peers to exchange pieces of files.
log
crate for better debugging and tracing.git clone https://github.com/ArloFilley/rusty_torrent.git
cd rusty_torrent
cargo build --release
To use the BitTorrent client, follow these steps:
cargo run --release
cargo run --release /path/to/your.torrent
cargo run --release /path/to/your.torrent /path/to/downloads
A BitTorrent client implemented in Rust that allows you to interact with the BitTorrent protocol and download torrents.
Usage: rusty_torrent [OPTIONS] --torrent-file-path <TORRENT_FILE_PATH> --download-path <DOWNLOAD_PATH>
Options:
-l, --log-file-path <LOG_FILE_PATH>
-t, --torrent-file-path <TORRENT_FILE_PATH>
-d, --download-path <DOWNLOAD_PATH>
-h, --help Print help
-V, --version Print version
The client will start downloading the torrent files and interacting with peers.
This BitTorrent client uses Rust's asynchronous programming features to manage connections with peers and perform file downloads. It employs the BitTorrent protocol's handshake and communication mechanisms to exchange pieces of data with other peers in the network. The client also verifies downloaded pieces using SHA-1 hashes provided by the torrent file.
Contributions are welcome! If you find any bugs or want to add new features, please feel free to open issues and pull requests on the GitHub repository.
This project is licensed under the MIT License.