Owez / torro

A correct and easy-to-use BitTorrent library

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Roadmap to first release

Owez opened this issue · comments

This issue is a roadmap/plan for development for the first release of torro. Below is a checklist-type list of overarching features to implement and issues (if any) linked to each.

These are not the "Objectives" set on the README.md file, just other goals to work towards.

Primary development objectives

  • Bencode Parsing: parsing of bencoded .torrent files, not user-facing
  • Torrent::new method: A simple function that uses bencode parsing to create a simple Torrent struct for interacting with various parts of the library, user-facing
  • Tracker protocol: A (typically) UDP-connected module for easy uplink to given tracker, not user-facing
  • P2P protocol: TCP (most likely not the alternative uTP) backend file downloading, not user-facing
  • Torrent::download method: An easily accessible function attached to the Torrent struct which allows downloading of torrent instance using previous "Tracker protocol" and "P2P protocol" implementations
  • Seeding: Future seeding efforts

Misc objectives

Other objectives that cannot be set in order or marked with a checkbox, just items to finish to a deemed quality before release.

  • Beginner-friendly docs
  • More examples
    • #21 (see discussion if this should be a objective)