/TorrentiumAPI

The backend for Torrentium Android App

Primary LanguagePythonMIT LicenseMIT

TorrentiumAPI

The backend for the Torrentium Android app.

Features

  • RESTful - The RESTful API is built using the FastAPI framework
  • Scraper - API to torrents site such as nyaa.si and sukebei.nyaa.si
  • Caching - The server is configured cache the results for 2 minutes.
  • All-purpose downloader - Access to aria2c for downloading torrents
  • Automated uploads - Automated uploads of downloads via rclone to cloud storage.

Deploy on heroku

Required tools

git clone https://github.com/itsZECHS/TorrentiumAPI.git
cd TorrentiumAPI
heroku create
heroku stack:set container -a {app_name}
heroku git:remote -a {app_name}
git push heroku main

Set environment variables

Heroku Config Vars

  • Here RCLONE_TOKEN is the token from rclone config, to obtain this follow steps below
rclone config show

What to copy

Copy the token value from the output.

  • The TEAM_DRIVE_ID is the id of the team drive where you want to store your downloads.

You can copy this from the output of rclone config show (above) or Google Drive's team drive page.

  • To avoid Heroku Sleep add SERVER_URL and value <heroku app url>

How to use?

Once deployed, you can vist localhost for full documentation on the api.

The intended use of this API is to be used by the Torrentium app which you can download from here.

Demo

Check out the publicly deployed version here Heroku - TorrentiumAPI.

This is only for demonstration purpose and is not intended to be used in production.