torro

command module
v0.0.0-...-9fe5d5b Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 22, 2016 License: MIT Imports: 12 Imported by: 0

README

torro

a BitTorrent client for the purposes of learning Go.

TODO
Bencoding
  • Some files are not being parsed correctly. We need to test parser on a larger set of .torrent files.
Tracker Protocol
  • Support UDP trackers
P2P
  • Handshake message needs to be sent.
  • All other messages need to be sent/received through a state machine.
  • Need to design concurrent goroutines for handling clients.
File Handling
  • Need to write pieces to a memory mapped file.
  • If some files are finished but others are not, the finished files should be fully accessible on the filesystem.
  • Unfinished files should end in .part extension
Database
  • Store file/transfer metadata in a central database. sqlite?
  • Explore whether to use an ORM.
  • Should there be a separate config/settings file?
Command Line
  • Start a background daemon that can download and upload files
  • Commands
    • Start
    • Pause
    • Delete
    • List
Console UI
Web API
  • Should this be REST or WebSocket based?
Web UI
  • React-based UI
  • Webpack
  • es6 with Babel
  • Browser notifications
  • d3 Visualizations
Resources

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL