Repolode
jesec

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. 1

    Install Node.js from nodejs.org or a package manager

  2. 2

    Install Flood globally via npm

    npm install --global flood
  3. 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