Torrent-Manager/README.md

122 lines
3.2 KiB
Markdown

# Transmission RSS Manager
A C# application for managing RSS feeds and automatically downloading torrents via Transmission BitTorrent client.
## Features
- Monitor multiple RSS feeds for new torrents
- Apply regex-based rules to automatically match and download content
- Manage Transmission torrents through a user-friendly web interface
- Post-processing of completed downloads (extract archives, organize media files)
- Responsive web UI for desktop and mobile use
- Database integration for historical data and statistics
- Dashboard with metrics and download history
## Requirements
- Linux OS (Debian, Ubuntu, or derivatives)
- Transmission BitTorrent client (with remote access enabled)
## One-Click Installation
Install Transmission RSS Manager with a single command:
```bash
wget -O - https://git.powerdata.dk/masterdraco/Torrent-Manager/raw/branch/main/install.sh | sudo bash
```
This command:
1. Downloads the installer script
2. Installs all dependencies (.NET SDK, PostgreSQL, etc.)
3. Sets up the database
4. Builds and configures the application
5. Creates and starts the system service
After installation, access the web interface at: http://localhost:5000
## Alternative Installation Methods
If you prefer to examine the install script before running it, you can:
```bash
# Download the install script
wget https://git.powerdata.dk/masterdraco/Torrent-Manager/raw/branch/main/install.sh
# Review it
less install.sh
# Run it
sudo bash install.sh
```
Or if you've already cloned the repository:
```bash
sudo bash install.sh
```
## Configuration
After starting the application for the first time, a configuration file will be created at `~/.config/transmission-rss-manager/config.json`.
You can configure the application through the web interface or by directly editing the configuration file.
### Key configuration options
- **Transmission settings**: Host, port, username, password
- **RSS feed checking interval**
- **Auto-download settings**
- **Post-processing options**
- **Download and media library directories**
## Usage
### Managing RSS Feeds
1. Add RSS feeds through the web interface
2. Create regex rules for each feed to match desired content
3. Enable auto-download for feeds you want to process automatically
### Managing Torrents
- Add torrents manually via URL or magnet link
- View, start, stop, and remove torrents
- Process completed torrents to extract archives and organize media
## Development
### Building from source
```bash
dotnet build
```
### Running in development mode
```bash
dotnet run
```
### Creating a release
```bash
dotnet publish -c Release
```
## Architecture
The application is built using ASP.NET Core with the following components:
- **Web API**: REST endpoints for the web interface
- **Background Services**: RSS feed checking and post-processing
- **Core Services**: Configuration, Transmission communication, RSS parsing
## License
This project is licensed under the MIT License - see the LICENSE file for details.
## Acknowledgments
- [Transmission](https://transmissionbt.com/) - BitTorrent client
- [ASP.NET Core](https://docs.microsoft.com/en-us/aspnet/core/) - Web framework
- [Bootstrap](https://getbootstrap.com/) - UI framework