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.
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
- Start the application:
torrent-downloader-react
- Open your browser at http://127.0.0.1:8000
- Paste a magnet link in the input field and click "Add Torrent"
- Monitor download progress in the list view
- Access completed downloads in your Downloads/TorrentDownloader folder
- 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 torrentGET /api/torrent/list- List all active torrentsDELETE /api/torrent/{torrent_id}- Remove torrentGET /api/downloads/path- Get downloads directory pathPOST /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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file torrent-downloader-react-1.1.11.tar.gz.
File metadata
- Download URL: torrent-downloader-react-1.1.11.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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a3f0745d0974f28c8e523d239131753c74762f01f95df2358359ffeeaf61eee3
|
|
| MD5 |
e6040592247587059dc56c7748ab0220
|
|
| BLAKE2b-256 |
a7cbdc39ca7ab9417ab5864ad9cd9444ff4a596a6a0dfa8ec07d2d91d2a9ddc2
|
File details
Details for the file torrent_downloader_react-1.1.11-py3-none-any.whl.
File metadata
- Download URL: torrent_downloader_react-1.1.11-py3-none-any.whl
- Upload date:
- Size: 69.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
df881db312c76244ef974a53e8add0ab859e86a4b5cd90d1d9325e37e253f508
|
|
| MD5 |
2f3a89ab35182ff0cd561a30e823703e
|
|
| BLAKE2b-256 |
8f286a1b8354bc1313c2c258d299e5a505eac464fcf32895c966db058321110a
|