Skip to main content

A high-performance, React-based BitTorrent client with an intuitive interface for seamless file downloading

Project description

Torrent Downloader Web App

A modern, full-featured torrent downloader with a clean React interface and FastAPI backend.

Torrent Downloader Web UI

Features

  • Sleek, Responsive UI: Modern React interface that works on desktop and mobile
  • Real-time Updates: Live tracking of download progress, speed, and ETA
  • Easy to Use: Simple interface for adding and managing downloads
  • Flexible Backend: Powerful FastAPI server handling torrent operations
  • Lightweight: Minimal resource usage while maintaining full functionality
  • Cross-platform: Works on Windows, macOS, and Linux

System Requirements

  • Python 3.8 or higher
  • Platform-specific libtorrent dependencies:
    • Windows: Microsoft Visual C++ Redistributable
    • macOS: brew install libtorrent-rasterbar
    • Ubuntu/Debian: sudo apt-get install python3-libtorrent
    • Fedora: sudo dnf install rb_libtorrent-python3

Installation

From PyPI (Recommended)

pip install torrent-downloader-react

From Source

git clone https://github.com/stevenbtc/torrent-downloader.git
cd torrent-downloader/torrent-downloader-react/backend
pip install -e .

Usage

  1. Start the application:
    torrent-downloader-react
    
  2. Open your browser at http://127.0.0.1:8000
  3. Paste a magnet link in the input field and click "Add Torrent"
  4. Monitor download progress in the list view
  5. Access completed downloads in your Downloads/TorrentDownloader folder
  6. Click "Open Download Folder" to view your downloaded files

Development Setup

Frontend (React + Vite)

# Install dependencies
cd torrent-downloader-react
npm install

# Start development server (runs on http://localhost:5173)
npm run dev

Backend (FastAPI)

# Install dependencies
cd torrent-downloader-react/backend
pip install -r requirements.txt

# Start development server
python -m torrent_downloader.server

API Documentation

The backend provides a RESTful API:

  • POST /api/torrent/add - Add new torrent
  • GET /api/torrent/list - List all active torrents
  • DELETE /api/torrent/{torrent_id} - Remove torrent
  • GET /api/downloads/path - Get downloads directory path
  • POST /api/downloads/open - Open downloads folder

Alternative Installation with Conda

# Create and activate conda environment
conda create -n torrent-env python=3.11
conda activate torrent-env

# Install libtorrent dependency
conda install -c conda-forge libtorrent

# Install the package
pip install torrent-downloader-react

License

MIT License - See LICENSE file for details.

Legal Notice

This software is intended for downloading legal torrents only. Users are responsible for compliance with applicable laws.

Project details


Download files

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

Source Distribution

torrent-downloader-react-1.1.9.tar.gz (70.1 kB view details)

Uploaded Source

Built Distribution

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

torrent_downloader_react-1.1.9-py3-none-any.whl (69.5 kB view details)

Uploaded Python 3

File details

Details for the file torrent-downloader-react-1.1.9.tar.gz.

File metadata

  • Download URL: torrent-downloader-react-1.1.9.tar.gz
  • Upload date:
  • Size: 70.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.11

File hashes

Hashes for torrent-downloader-react-1.1.9.tar.gz
Algorithm Hash digest
SHA256 2d43443d4cb5013aa95966c64ba42afb0ec16dc30cf704d768ddd70765a8b7f5
MD5 fea320d922df1dc630b18f1b77bd8bf6
BLAKE2b-256 a2c8fe10334ba1ff0db7aa4b43e85dba37419f9f44f3b7a38644883e3d6f92e1

See more details on using hashes here.

File details

Details for the file torrent_downloader_react-1.1.9-py3-none-any.whl.

File metadata

File hashes

Hashes for torrent_downloader_react-1.1.9-py3-none-any.whl
Algorithm Hash digest
SHA256 dda6954e1a83e96e88123cbe3fd75d260fb3e09e8f36ee73f8e9db7bcb548e34
MD5 fdeadc87e815997f439ba270f651eda2
BLAKE2b-256 48aa938e8f8a15018260ba554d98aa9d66b8a4e55e271b4f08d9a5056b0ce8e4

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page