485c3cfd94334afd6a85b8a740d6fbd7faa4be40
Birden fazla kök klasör arasında veri birleştirmeyi sağlamak için TVDB kimliklerini kullanan TV dizileri için kanonik anahtar sistemi uygulandı. Kullanıcı arayüzünde reaktif yükleme eklendi ve eski yollardan otomatik geçişle meta veri yönetimi geliştirildi. Önemli Değişiklikler: - TV dizisi veri yapısı artık dizi başına birden fazla kök klasörü destekliyor - Eski klasör anahtarları otomatik olarak kanonik TVDB anahtarlarına taşınıyor - Veritabanı şeması, rootFolders dizisi için yeni indekslerle güncellendi
du.pe - Simple, Fast & Lightweight Torrent Server ⚡📦
A self-hosted torrent-based file manager and media player, similar to Put.io — fast, minimal, and elegant.
Add torrents, monitor downloads, and instantly stream videos through a clean web interface! 🖥️🎬
✨ Features
-
🧲 Add Torrents
- Upload
.torrentfiles (via form) - Add magnet links (via prompt)
- Upload
-
👤 Profil & Avatar
- Profil bilgilerini görüntüle
- Avatarı güvenli şekilde yükle/kırp (PNG, 3MB sınır)
-
📥 Download Management
- View active torrents
- See progress, speed, and remaining time
- Browse file trees within torrents
-
🔴 Real-Time Updates
- Live progress updates via WebSocket
-
🎞️ Instant Playback
- Stream video files directly in the browser
- ffmpeg-ready structure for Safari/codec compatibility
-
🗂️ Clean & Modern Web Interface
- Svelte-powered fast and lightweight UI
- Search bar, torrent list, detailed view
- Custom modal video player: title, progress bar, volume, subtitles, and download icons
- Mobile-friendly layout with hamburger menu support
-
🐳 Easy Docker Setup
- One-command deployment with
docker-compose.yml
- One-command deployment with
📝 Login and user authentication are not yet implemented — planned in the roadmap.
🏗️ Architecture
root
├─ client/ # Svelte-based Web UI
├─ server/ # Node.js (Express) API + WebSocket + WebTorrent
└─ docker-compose.yml
-
client
- Developed and built using Vite
- Backend API configured via
VITE_API(e.g.,http://192.168.x.x:3001)
-
server
- Express REST endpoints (list, add, stream torrents)
- Real-time updates via WebSocket (
progressevents) - WebTorrent for downloading and seeding
- Optional ffmpeg integration for video transcoding
🚀 Quick Start
🐳 Docker Compose (Recommended)
docker compose up -d --build
Default Ports:
- RUN:
http://localhost:3001
🔌 API & WebSocket Endpoints
| Method | URL | Description |
|---|---|---|
GET |
/api/torrents |
Returns active torrents |
POST |
/api/transfer |
Adds a torrent via .torrent file upload |
POST |
/api/magnet |
Adds a torrent via magnet link |
GET |
/stream/:infoHash/:fileIndex |
Streams a video or file |
WS |
ws://<API_HOST>:3001/ |
Torrent progress updates (type: progress) |
🧠 Developer Notes
- Safari Compatibility: Some codecs may cause issues. It’s recommended to remux files (
.mkv → .mp4) with ffmpeg if needed.
🛣️ Roadmap
- 🔐 Authentication (JWT or session-based)
- 🎛️ Advanced player features (subtitle selection, quality control)
- 🧹 File management, trash bin, and history
- 🧪 Automated testing and CI setup
Description
Languages
Svelte
51.8%
JavaScript
45.9%
CSS
2.1%
