You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Go to file
Naim A 4d3f13b76d
10 months ago
.github buymeacoffee 3 years ago
contrib/OpenRC Add OpenRC example scripts 1 year ago
docs docs: add curl examples 3 years ago
src fix issue #114 1 year ago
.gitignore Initial Commit 5 years ago
.travis.yml Added travis-ci configuration 5 years ago
Cargo.lock Bump clap from 3.2.8 to 3.2.16 10 months ago
Cargo.toml Bump tokio from 1.17.0 to 1.19.2 11 months ago
Dockerfile Dockerfile: Use ENTRYPOINT for binary and CMD for switches 10 months ago
LICENSE removed line from license 5 years ago Update 10 months ago
rustfmt.toml add rustfmt 3 years ago
udpt.toml update docs 3 years ago


UDPT is a UDP based torrent tracker which fully implements BEP-15.

This project was written in Rust, it is a complete rewrite of a previous C/C++ UDPT project (which is still currently available in the v2.1 tag of the repository).


  • UDP torrent tracking server
  • In memory database
  • Choice of Dynamic/Static/Private tracker modes
  • Ability to block a torrent from being tracked
  • HTTP REST API for management
  • Logging
  • Windows Service or Linux/Unix daemon

Getting started

The easiest way is to get built binaries from Releases, but building from sources should be fairly easy as well:

git clone
cd udpt
cargo build --release


Please report any bugs you find to our issue tracker. Ideas and feature requests are welcome as well!

Any pull request targeting existing issues would be very much appreciated.

Why was UDPT rewritten in rust?

For a few reasons,

  1. Rust makes it harder to make mistakes than C/C++, It provides memory safety without runtime cost.
  2. Rust allows easier cross-platform development with it's powerful standard library.
  3. Integrated tests and benchmarks.

UDPT was originally developed for fun in 2012 by @naim94a.