anacrolix/torrent

Full-featured BitTorrent client package and utilities

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 49 minutes ago
Added to GitGenius on September 11th, 2026
Created on January 8th, 2015
Open Issues & Pull Requests: 78 (+0)
GitHub issues: Enabled
Number of forks: 690
Total Stargazers: 6,111 (+0)
Total Subscribers: 130 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 20.6 hours
Mean response time: 2.8 days
90th percentile: 7.8 days
Tracked items: 61

How this project is maintained

Around half of the issues opened in the past year never receive a reply. 87% of open issues come from outside the core team, so the backlog reflects real-world use rather than internal planning. Only 5% of issues opened in the past year have been closed. Three people close 72% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 23
New in 7 days: 5
Closed in 7 days: 1
Avg open age: 595 days
Stale 30+ days: 17
Stale 90+ days: 15

Recent activity

Opened in 7 days: 5
Closed in 7 days: 1
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • enhancement (5)
  • help wanted (5)
  • confirmed (2)
  • low-priority (2)
  • custom networks (1)
  • difficult (1)
  • easy (1)
  • waiting for feedback (1)

Detailed Description

anacrolix/torrent is a BitTorrent client library written in Go that provides a full-featured implementation for building torrent applications.

The library solves the problem of integrating BitTorrent functionality into Go applications without requiring developers to implement the protocol from scratch. It handles the core BitTorrent protocol operations including peer discovery, piece downloading, and data verification. The package exposes both low-level protocol primitives and higher-level client abstractions, allowing developers to build custom torrent clients or embed torrent capabilities into existing applications. It supports magnet links and streaming downloads, enabling use cases beyond traditional file downloading.

Developers should choose this library if they need BitTorrent functionality in a Go application and want to avoid reimplementing protocol details. It suits projects ranging from specialized torrent clients to applications that need P2P file distribution capabilities. The library is particularly useful for scenarios requiring programmatic control over torrent operations or integration into larger systems. Those building general-purpose torrent applications or requiring extensive customization of client behavior will find the package-based approach valuable compared to standalone client applications.

The project shows consistent maintenance with regular commits addressing bugs and protocol improvements. Development activity demonstrates responsiveness to issues and pull requests, indicating active engagement with users. The codebase receives updates that maintain compatibility with evolving BitTorrent standards and Go language changes. The project maintains a focus on core functionality rather than expanding into unrelated areas, suggesting disciplined scope management.