- http and udp trackers + compact response support (BEP 3, BEP 7, BEP 15, BEP 23)
- download a multi-file torrent using all strategies (BEP 3, BEP 20)
- seeding
- smart ban
- canonical peer priority for seeding (BEP 40)
- user interface
- upnp port forwarding with randomization
You won't be able to:
- use protocol extensions
- download many torrents at once (for now)
- seed in ipv6
- download / seed without an upnp-enabled router or from a double nat
- download from magnet links (perhaps with an existing service api)
- contribute to incoming connections during download (only to outgoing)
Important
- to mitigate unexpected behavior, use python version
3.10
- install requirements with
pip install -r requirements.txt
- rename module name in
.idea/workspace.xml
toRaBit
- run
src/client/main.py
fromRaBit/
directory