Skip to main content

qBitrr Logo qBitrr

Torrentarr – Companion tools and automation for the *Arr ecosystem.

PyPI Downloads Docker Pulls CI CodeQL Nightly Build pre-commit.ci License: MIT

🧩 The intelligent glue between qBittorrent and the *Arr ecosystem (Radarr, Sonarr, Lidarr). Monitors torrent health, triggers instant imports, automates quality upgrades, manages disk space, integrates with request systems (Overseerr/Ombi), and provides a modern React dashboard for complete visibility and control.

📚 Documentation

Full documentation is available at: https://feramance.github.io/qBitrr/

  • Getting Started – Installation guides for pip, Docker, and native setups
  • Configuration – qBittorrent, Arr instances, quality profiles, and more
  • Features – Health monitoring, automated search, quality management, disk space, auto-updates
  • WebUI – Built-in React dashboard with live monitoring and config editor
  • Troubleshooting – Common issues and debug logging
  • API Reference – REST API documentation

⚡ Quick Start

🐍 Install with pip

python -m venv .venv
source .venv/bin/activate  # Windows: .venv\Scripts\activate
pip install qBitrr2

# First run creates config (Docker: /config/config.toml; native: .config/config.toml in current directory, or set QBITRR_OVERRIDES_DATA_PATH)
qbitrr

🐳 Run with Docker

docker run -d \
  --name qbitrr \
  --tty \
  -e TZ=Europe/London \
  -p 6969:6969 \
  -v /path/to/appdata/qbitrr:/config \
  -v /path/to/completed/downloads:/completed_downloads:rw \
  --restart unless-stopped \
  feramance/qbitrr:stable

Docker Compose:

services:
  qbitrr:
    image: feramance/qbitrr:stable
    container_name: qbitrr
    restart: unless-stopped
    tty: true
    environment:
      TZ: Europe/London
    ports:
      - "6969:6969"
    volumes:
      - /path/to/appdata/qbitrr:/config
      - /path/to/completed/downloads:/completed_downloads:rw

Access the WebUI at http://<host>:6969/ui after startup.

Use :stable for production (feature/fix releases). :latest also includes weekly dependency builds; :nightly tracks master. See the Docker installation guide for details.

✨ Key Features

  • 🚀 Multi-qBittorrent Support – Manage torrents across multiple qBittorrent instances for load balancing, redundancy, and VPN isolation
  • 🚑 Torrent Health Monitoring – Detect stalled/failed downloads, auto-blacklist, trigger re-searches
  • 🔍 Automated Search – Missing media, quality upgrades, custom format scoring
  • 🎯 Request Integration – Pull requests from Overseerr/Ombi, prioritize user-requested media
  • 📊 Quality Management – RSS sync, queue refresh, profile switching, custom format enforcement
  • 🌱 Seeding Control – Per-tracker settings, ratio/time limits, tracker injection
  • 🛡️ Hit and Run Protection – Automatic HnR obligation tracking with configurable thresholds, partial download handling, and dead tracker bypass
  • 💾 Disk Space Management – Auto-pause when low on space, configurable thresholds
  • 🔄 Auto-Updates – GitHub release-based updates with scheduled cron support
  • 💻 Modern WebUI – Live process monitoring, log viewer, Arr insights, config editor

🛠️ Essential Configuration

  1. Configure qBittorrent in your config file (Docker: /config/config.toml; native: .config/config.toml in the current directory, or path set by QBITRR_OVERRIDES_DATA_PATH):

    [qBit]
    Host = "localhost"
    Port = 8080
    UserName = "admin"
    Password = "adminpass"
    
  2. Add Arr instances:

    [Radarr-Movies]
    URI = "http://localhost:7878"
    APIKey = "your-radarr-api-key"
    Category = "radarr-movies"
    
  3. Set completed folder:

    [Settings]
    CompletedDownloadFolder = "/path/to/completed"
    

Multi-qBittorrent

Manage torrents across multiple qBittorrent instances:

[qBit]  # Default instance (required)
Host = "localhost"
Port = 8080
UserName = "admin"
Password = "password"

[qBit-seedbox]  # Additional instance (optional)
Host = "192.168.1.100"
Port = 8080
UserName = "admin"
Password = "seedboxpass"

See qBittorrent configuration (multi-instance section) for complete documentation.


See Configuration Guide and config.example.toml for all available options.

📖 Resources

🐛 Issues & Support

🤝 Contributing

Contributions welcome! See docs/development/contributing.md for coding guidelines and development setup.

Development setup:

# Python backend
make newenv && make syncenv
make reformat  # Format and lint

# WebUI
cd webui && npm ci
npm run dev    # Dev server at localhost:5173

🤖 AI Assistance

AI tools are used to help keep up with project maintenance—implementation assistance, reviewing large surfaces, and docs/CI churn. All project decisions, and all code and documentation changes, are made and manually reviewed by the maintainer before they land. AI is a tool, not an autonomous maintainer; accountability for this repository remains with the human maintainer(s).

❤️ Support

If qBitrr saves you time and headaches:

  • Star the repo – helps others discover qBitrr
  • 💰 Sponsor: Patreon | PayPal

📄 License

Released under the MIT License. Use it, modify it, share it—commercially or personally.

Star History

Star History Chart

Made with ❤️ by the qBitrr community

DocumentationPyPIDockerGitHub

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

qbitrr2-5.13.2.post1.tar.gz (1.1 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

qbitrr2-5.13.2.post1-py3-none-any.whl (1.1 MB view details)

Uploaded Python 3

File details

Details for the file qbitrr2-5.13.2.post1.tar.gz.

File metadata

  • Download URL: qbitrr2-5.13.2.post1.tar.gz
  • Upload date:
  • Size: 1.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for qbitrr2-5.13.2.post1.tar.gz
Algorithm Hash digest
SHA256 5a7d693efc43e5f66027a1d5587d0ac1a6e8bc10a17581c78f0b9a4d3adc8420
MD5 9dcb3849d00aa14604be0493766a4af6
BLAKE2b-256 3bc21588db6fd528337f80a08df73afbb03ebc7bae8f69048e71e476c1ec6b55

See more details on using hashes here.

Provenance

The following attestation bundles were made for qbitrr2-5.13.2.post1.tar.gz:

Publisher: release.yml on Feramance/qBitrr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file qbitrr2-5.13.2.post1-py3-none-any.whl.

File metadata

  • Download URL: qbitrr2-5.13.2.post1-py3-none-any.whl
  • Upload date:
  • Size: 1.1 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for qbitrr2-5.13.2.post1-py3-none-any.whl
Algorithm Hash digest
SHA256 bbc068c8d0b51c8081011981ca68274e382d85d50a3122d030ad95b4a4b4280f
MD5 001439a9a20ad80abe526227d0a86e20
BLAKE2b-256 a820a902ce27c1a93f6e8fc1fbb24d4bad2f51cce06bab3c1b3cc456b8846b11

See more details on using hashes here.

Provenance

The following attestation bundles were made for qbitrr2-5.13.2.post1-py3-none-any.whl:

Publisher: release.yml on Feramance/qBitrr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

5.14.4.post1

2 files

5.14.3.post1

2 files

5.14.2.post1

2 files

5.14.1.post1

2 files

5.14.0.post1

2 files

5.13.3.post3

2 files

5.13.3.post2

2 files

5.13.3.post1

2 files

This release

5.13.2.post1 This release

2 files

5.13.1.post2

2 files

5.13.1.post1

2 files

5.13.0.post1

2 files

5.12.12

2 files

5.12.11

2 files

5.12.10

2 files

5.12.9

2 files

5.12.8

2 files

5.12.7

2 files

5.12.6

2 files

5.12.5

2 files

5.12.4

2 files

5.12.3

2 files

5.12.2

2 files

5.12.1

2 files

5.12.0

2 files

5.11.1

2 files

5.10.1

2 files

5.10.0

2 files

5.9.3

2 files

5.9.2

2 files

5.9.1

2 files

5.9.0

2 files

5.8.8

2 files

5.8.7

2 files

5.8.6

2 files

5.8.5

2 files

5.8.4

2 files

5.8.3

2 files

5.8.1

2 files

5.8.0

2 files

5.7.1

2 files

5.7.0

2 files

5.6.2

2 files

5.6.1

2 files

5.6.0

2 files

5.5.6

2 files

5.5.5

2 files

5.5.3

2 files

5.5.2

2 files

5.5.1

2 files

5.5.0

2 files

5.4.5

2 files

5.4.4

2 files

5.4.3

2 files

5.4.2

2 files

5.4.1

2 files

5.4.0

2 files

5.3.3

2 files

5.3.2

2 files

5.3.1

2 files

5.3.0

2 files

5.2.0

2 files

5.1.1

2 files

5.1.0

2 files

5.0.2

2 files

5.0.1

2 files

5.0.0

2 files

4.10.28

2 files

4.10.27

2 files

4.10.26

2 files

4.10.25

2 files

4.10.24

2 files

4.10.23

2 files

4.10.22

2 files

4.10.21

2 files

4.10.20

2 files

4.10.19

2 files

4.10.18

2 files

4.10.17

2 files

4.10.16

2 files

4.10.15

2 files

4.10.14

2 files

4.10.13

2 files

4.10.12

2 files

4.10.11

2 files

4.10.10

2 files

4.10.9

2 files

4.10.8

2 files

4.10.7

2 files

4.10.6

2 files

4.10.5

2 files

4.10.4

2 files

4.10.3

2 files

4.10.2

2 files

4.10.1

2 files

4.10.0

2 files

4.9.20

2 files

4.9.19

2 files

4.9.18

2 files

4.9.17

2 files

4.9.16

2 files

4.9.15

2 files

4.9.14

2 files

4.9.13

2 files

4.9.12

2 files

4.9.11

2 files

4.9.10

2 files

4.9.9

2 files

4.9.8

2 files

4.9.7

2 files

4.9.6

2 files

4.9.5

2 files

4.9.4

2 files

4.9.3

2 files

4.9.2

2 files

4.9.1

2 files

4.9.0

2 files

4.8.3

2 files

4.8.2

2 files

4.8.1

2 files

4.8.0

2 files

4.7.5

2 files

4.7.4

2 files

4.7.3

2 files

4.7.2

2 files

4.7.1

2 files

4.7.0

2 files

4.6.13

2 files

4.6.12

2 files

4.6.11

2 files

4.6.10

2 files

4.6.9

2 files

4.6.8

2 files

4.6.7

2 files

4.6.6

2 files

4.6.5

2 files

4.6.4

2 files

4.6.3

2 files

4.6.2

2 files

4.6.1

2 files

4.6.0

2 files

4.5.13

2 files

4.5.12

2 files

4.5.11

2 files

4.5.10

2 files

4.5.9

2 files

4.5.8

2 files

4.5.7

2 files

4.5.6

2 files

4.5.5

2 files

4.5.4

2 files

4.5.3

2 files

4.5.2

2 files

4.5.1

2 files

4.5.0

2 files

4.4.2

2 files

4.4.1

2 files

4.4.0

2 files

4.3.3

2 files

4.3.2

2 files

4.3.1

2 files

4.3.0

2 files

4.2.9

2 files

4.2.8

2 files

4.2.7

2 files

4.2.6

2 files

4.2.5

2 files

4.2.4

2 files

4.2.3

2 files

4.2.2

2 files

4.2.1

2 files

4.2.0

2 files

4.1.2

2 files

4.1.1

2 files

4.1.0

2 files

4.0.14

2 files

4.0.13

2 files

4.0.12

2 files

4.0.11

2 files

4.0.10

2 files

4.0.9

2 files

4.0.8

2 files

4.0.7

2 files

4.0.6

2 files

4.0.5

2 files

4.0.4

2 files

4.0.3

2 files

4.0.2

2 files

4.0.1

2 files

4.0.0

2 files

3.8.12

2 files

3.8.11

2 files

3.8.10

2 files

3.8.9

2 files

3.8.8

2 files

3.8.7

2 files

3.8.6

2 files

3.8.5

2 files

3.8.4

2 files

3.8.3

2 files

3.8.2

2 files

3.8.1

2 files

3.8.0

2 files

3.7.17

2 files

3.7.16

2 files

3.7.15

2 files

3.7.14

2 files

3.7.13

2 files

3.7.12

2 files

3.7.11

2 files

3.7.10

2 files

3.7.9

2 files

3.7.8

2 files

3.7.7

2 files

3.7.6

2 files

3.7.5

2 files

3.7.4

2 files

3.7.3

2 files

3.7.2

2 files

3.7.1

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page