Hasty Briefsbeta

Bilingual

Show HN: I wrote a BitTorrent Client from scratch

a year ago
  • #P2P
  • #BitTorrent
  • #Go
  • BitTorrent client implementation in Go supporting torrent file parsing, peer discovery, and file downloading
  • Bencode encoding/decoding with support for all Bencode types (strings, integers, lists, dictionaries)
  • Torrent file processing including parsing, info hash calculation, and piece hash extraction
  • Peer discovery and communication with HTTP tracker support and BitTorrent message protocol
  • Download functionality with piece and block management, concurrent downloads, and progress tracking
  • Project structure includes cmd/, internal/, and pkg/ directories
  • Requires Go 1.21 or later
  • Future features: Magnet link support, metadata exchange protocol, DHT support