Skip to content

TrackarrModern Private BitTorrent Tracker

High-performance, security-first tracker with Zero-Knowledge Authentication, Two-Factor Auth, and Panic Mode encryption.

Why Trackarr?

Trackarr is designed for communities that value privacy and security above all else. Unlike traditional trackers that store passwords and personal data in plaintext or with reversible encryption, Trackarr uses cryptographic proofs that make it mathematically impossible to recover user credentials — even for administrators.

This documentation covers the Dim145/opentracker fork, which adds two-factor auth, user-managed invitations, the moderation pipeline, bonus events, the seed-bonus economy (per-user points + shop), the UDP tracker frontend (BEP 15 alongside HTTP), the three-state registration mode, pluggable media metadata (TMDb / IGDB / Open Library), multi-channel notifications (SMTP, Telegram, Discord, Web Push, …), a community bounty board, a follow / subscribe graph with upload notifications, private favorites, a cross-seed surface on every torrent, anti-cheat detection feeding a manual triage queue, and a hardened announce hot path on top of the original feature set.

Tech Stack

LayerTechnologyPurpose
FrontendNuxt 4, Vue 3, Tailwind CSSSSR (or fully static SPA), Composition
BackendNitro Server EngineAPI routes, middleware
TrackerGo (custom)HTTP announces, peer store, bonus mul.
DatabasePostgreSQL 16 + Drizzle ORMData persistence, full-text search
CacheRedis 7Peer lists, sessions, rate limiting
CryptoWeb Crypto API, scrypt, AES-256-GCMZKE auth, panic encryption
2FAotplib + @simplewebauthnTOTP + WebAuthn passkeys

Getting Started

bash
# Clone the repository
git clone https://github.com/Dim145/opentracker.git
cd opentracker
cp .env.example .env

# Generate the secrets that have no usable defaults
echo "IP_HASH_SECRET=$(openssl rand -hex 32)" >> .env
echo "NUXT_SESSION_SECRET=$(openssl rand -hex 32)" >> .env

# Bring up the data layer (Postgres + Redis)
docker compose up -d

# Start the app processes on the host (web + api + tracker)
pnpm install
pnpm dev

# Open http://localhost:3000 and register the first admin

For a production setup (Caddy + HTTPS + the three app containers together), see the Getting Started guide.

See the Getting Started guide for a deeper walk-through, or jump straight into the Configuration reference.

Released under the MIT License.