Self-hosted firewall that detects and bans unwanted, leeching and abnormal BitTorrent peers via qBittorrent, Transmission, Deluge and other clients' Web APIs.
jesec/flood
A self-hosted web UI for monitoring and managing rTorrent, qBittorrent and Transmission torrent clients.
Open-source alternative to:uTorrent Web
- Stars
- 2,857
- Forks
- 181
- Open issues
- 79
- Last commit
- yesterday
What is it?
Flood is a Node.js service that sits between a browser and a torrent client, then serves a web interface for administering downloads. It connects to rTorrent, qBittorrent and Transmission, with Deluge support marked as experimental. Users can reach their torrent client from any browser instead of relying on a desktop application on the machine running the client.
The backend is written in TypeScript and the frontend is built with React. Flood provides an OpenAPI specification and a Swagger UI at /api/docs/ for integrating with other tools. It can run from npm, a single-executable build for Linux, macOS and Windows, or a Docker image.
Flood performs file operations itself, so it must have access to the same filesystem paths as the torrent client. Built-in user management is enabled by default, and the project supports running behind a reverse proxy under a custom base path.
Key features
- 01Manages rTorrent, qBittorrent and Transmission from one web interface.
- 02Provides an OpenAPI spec and interactive Swagger UI.
- 03Installs via npm, Docker, or a single-executable binary.
- 04Includes built-in user management and runs behind a reverse proxy with a base URI.
- 05Performs file operations on the server, using the same paths as the torrent client.
Use cases
- Managing a seedbox or home torrent client from a phone or laptop browser.
- Giving several users controlled web access to one torrent client.
- Automating torrent management through Flood's REST API.
Quick start
- 1
Install Node.js from nodejs.org or a package manager
- 2
Install Flood globally via npm
npm install --global flood - 3
Run Flood
flood
Things to know
- Requires a separately running torrent client (rTorrent, qBittorrent, Transmission) to connect to.
- Deluge support is experimental only.
- Flood must have the same filesystem paths as the torrent client to perform file operations.
In collections
Topics
FAQ
- What is flood?
- A self-hosted web UI for monitoring and managing rTorrent, qBittorrent and Transmission torrent clients. Flood is a Node.js service that sits between a browser and a torrent client, then serves a web interface for administering downloads. It connects to rTorrent, qBittorrent and Transmission, with Deluge support marked as experimental. Users can reach their torrent client from any browser instead of relying on a desktop application on the machine running the client.
- Is flood free to use? What license does it have?
- flood is open source under the GPL-3.0 license. Check the license terms before using it in commercial products.
- Is flood still maintained?
- Actively maintained. The last commit to flood was on Oct 23, 2026.
- What can I use flood for?
- Managing a seedbox or home torrent client from a phone or laptop browser. Giving several users controlled web access to one torrent client. Automating torrent management through Flood's REST API.
- How do I install flood?
- Install Node.js from nodejs.org or a package manager Install Flood globally via npm: npm install --global flood Run Flood: flood
- Where can I get flood?
- The source code and installation instructions are on GitHub: https://github.com/jesec/flood
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A fast, single-binary web UI for managing multiple qBittorrent instances, with automations and cross-seeding.
A Vue.js-based alternative web interface for qBittorrent, offering a modern dashboard, mobile support and keyboard shortcuts.
A download manager for the Servarr ecosystem that automatically cleans up stalled, blocked, and malicious torrents in Sonarr, Radarr, and similar apps.
Regularly updated lists of public BitTorrent tracker URLs, checked automatically and sorted by popularity and latency.
A web UI for managing self-hosted Headscale servers, covering nodes, ACLs, DNS and Headscale settings.