Torrent-Manager/README.md

115 lines
3.0 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
## Requirements
- .NET 7.0 or higher
- Transmission BitTorrent client (with remote access enabled)
- Linux OS (tested on Ubuntu, Debian, Fedora, Arch)
- Dependencies: unzip, p7zip, unrar (for post-processing)
## Installation
### Automatic Installation
Run the installer script:
```bash
curl -sSL https://raw.githubusercontent.com/yourusername/transmission-rss-manager/main/install-script.sh | bash
```
Or if you've cloned the repository:
```bash
./src/Infrastructure/install-script.sh
```
### Manual Installation
1. Install .NET 7.0 SDK from [Microsoft's website](https://dotnet.microsoft.com/download)
2. Clone the repository:
```bash
git clone https://github.com/yourusername/transmission-rss-manager.git
cd transmission-rss-manager
```
3. Build and run the application:
```bash
dotnet build -c Release
dotnet run
```
4. Open a web browser and navigate to: `http://localhost:5000`
## 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