Skip to content

werwolfby/monitorrent

Repository files navigation

monitorrent

awesome Build Status Build status Coverage Status codecov.io

Join discussion at:

Join the chat at https://gitter.im/werwolfby/monitorrent

Support on Beerpay

Hey dude! Help me out for a couple of 🍻!

Yandex.Money

This app can watch for torrent updates

Supported trackers:

Supported torrent clients:

  • support download torrent files to specified folder (downloader plugin)
  • support transmission over transmission-rpc
  • support deluge over deluge-rpc
  • support uTorrent over uTorrent web api
  • support qbittorrent over webui api

Supported notification services:

Installation:

Docker

Multiplatform image (arm64 and amd64 (arm is not supported anymore, until playwright will support it)):

Docker Pulls Docker Stars Docker Image Size

https://hub.docker.com/r/werwolfby/monitorrent/

How to run docker?

Monitorrent expose 6687 tcp port. And has database to store all current settings and info about monitorrent tracker topics. To store this database outside of container it has to be mounted to file outside monitorrent:

touch /path/to/monitorrent.db
docker run -d \
    --name monitorrent \
    -p 6687:6687 \
    -v /path/to/monitorrent.db:/var/www/monitorrent/monitorrent.db werwolfby/alpine-monitorrent

Where /path/to/monitorrent.db is path to stored monitorrent database file (it has to be absolute or use pwd macros in docker command).

For ARM version please use werwolfby/armhf-alpine-monitorrent.

Windows Installer:

https://github.com/werwolfby/monitorrent/releases/download/1.4.0/MonitorrentInstaller-1.4.0.exe

Manual Install

Requirements:

  • Python 3.9+ and pip

Download latest build: https://github.com/werwolfby/monitorrent/releases/download/1.4.0/monitorrent-1.4.0.zip Extract into monitorent folder

  • pip install -r requirements.txt
  • playwright --with-deps install firefox
  • python server.py

This will start webserver on port 6687

Open in browser http://localhost:6687

Default password is monitorrent. Don't forget to change in settings tab or disable authentication at all

Note for python 2.7

Monitorrent can run on Python 2.7, but because of unicode processing in it, there are plenty of issues with russian symbols in urls, pathes and credentials. Some of this issues are part of libraries that Monitorrent uses, so it can't be fixed on our side.

We will continue to support main functionallity on Python 2.7, but 'ascii' encoding issues will not be fixed in most cases.

Manual Install from sources (development mode)

Requirements:

  • Python 2.7 or 3.x, and pip
  • NodeJS 4.x

Download this repo:

To get monitorrent up and running execute following commands:

  • pip install -r requirements.txt
  • npm install
  • gulp
  • python server.py

This will start webserver on port 6687

Open in browser http://localhost:6687

Default password is monitorrent. Don't forget to change in settings tab or disable authentication at all

Command Line Interface

config.py Argument Environment Variable Default Description
debug --debug MONITORRENT_DEBUG False Run in debug mode. Secret key is always the same
ip --ip MONITORRENT_IP 0.0.0.0 Bind interface
port --port MONITORRENT_PORT 6687 Port for server
db-path --db-path MONITORRENT_DB_PATH monitorrent.db Path to SQL lite database
--config config.py Path to config file

NOTE: Environment Variables overrides config data, Command Line arguments overrides Environment Variables

NOTE: config.py is regular python file with variables and values: debug = True, ip = '127.0.0.1''

Screenshots:

Main page

Main Page

Settings

Settings

lostfilm.tv quality settings

Lostfilm Credentials

Torrent Clients

Torrent Clients

Transmission connection settings

Transmission Connection Settings

Add new topic

Add New Topic