bittorrent-tracker
BitTorrent tracker client and server for HTTP, UDP, and WebSockets
1.9k stars 331 forks last commit first released MIT
Actively maintained
Last commit 6 Aug 2026.
bittorrent-tracker is a Node.js implementation of a BitTorrent tracker, providing both client and server components. It handles announce and scrape requests to help BitTorrent clients discover peers and track swarm statistics across supported tracker protocols.
Key Features
- Client and server implementations in one package
- Supports HTTP/HTTPS trackers, UDP trackers (BEP 15), and WebSocket-based trackers used by WebTorrent
- Announce and scrape support, including multi-scrape
- IPv4 and IPv6 support
- Optional web-based tracker statistics with JSON output endpoints
- Server-side filtering hook for allow/deny logic (e.g., private tracker behavior)
- Command-line interface to run a tracker server
Use Cases
- Running a public or private tracker for distributing torrents within a community or organization
- Powering WebRTC-friendly tracker infrastructure for WebTorrent browser swarms
- Integrating tracker client functionality into custom Node.js BitTorrent tooling
Limitations and Considerations
- Tracker state is primarily in-memory by default, so persistence and horizontal scaling require external design decisions
- WebSocket tracking is primarily aimed at WebTorrent/WebRTC clients and may not be relevant for all BitTorrent ecosystems
bittorrent-tracker is a practical choice when you need a lightweight, well-tested tracker stack in JavaScript, with support for mainstream tracker protocols and straightforward operational tooling. It fits both standalone tracker deployments and programmatic embedding into other BitTorrent applications.
Categories:
Tags:
Tech Stack:
Similar to bittorrent-tracker

PairDrop
Cross-platform peer-to-peer file sharing in a web browser
AirDrop-like P2P file and text transfer in the browser with device pairing and temporary public rooms for internet transfers.

Jina
Cloud-native Python framework for serving multimodal AI services
Open-source Python framework to build, scale, and deploy multimodal AI services and pipelines with gRPC/HTTP/WebSocket support and Kubernetes/Docker integration.
iodine
IPv4-over-DNS tunneling server and client
iodine is a DNS tunneling tool that forwards IPv4 traffic through DNS queries and replies, providing a TUN interface to route IP traffic when only DNS is allowed.

sish
SSH-based reverse tunneling for HTTP(S), WebSockets, and TCP
sish is an open-source Serveo/ngrok alternative that exposes local HTTP(S), WebSockets, and TCP services to the internet using SSH reverse tunnels.

Uptime Kuma
Self-hosted uptime monitoring with alerts and status pages
Uptime Kuma is a self-hosted uptime monitoring tool for HTTP(S), TCP, ping, DNS and more, with notifications, charts, and public status pages.
Open Source Routing Machine (OSRM)
High-performance routing engine for OpenStreetMap data
OSRM is a high-performance routing engine for OpenStreetMap data, providing an HTTP API for routing, map matching, distance tables, and more.

