Desktop downloader
- Remove 7zip-bin dependency and asarUnpack config - Use WinRAR/UnRAR.exe from standard install paths with auto-detection - Add resolver with probing to cache the found extractor command - Add -y flag for auto-confirm and WinRAR.exe command support - Update tests for WinRAR argument format Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> |
||
|---|---|---|
| .github/workflows | ||
| assets | ||
| installer | ||
| scripts | ||
| src | ||
| tests | ||
| .gitignore | ||
| build_exe.ps1 | ||
| package-lock.json | ||
| package.json | ||
| README.md | ||
| real_debrid_downloader_gui.py | ||
| requirements.txt | ||
| tsconfig.json | ||
| vite.config.ts | ||
| vitest.config.ts | ||
Real-Debrid Download Manager (Node/Electron)
Desktop-App auf Node.js + Electron + React + TypeScript mit JDownloader-Style Workflow, optimiert fuer Real-Debrid.
Highlights
- Modernes, dunkles UI mit Header-Steuerung (Start, Pause, Stop, Speed, ETA)
- Tabs: Linksammler, Downloads, Settings
- Paketbasierte Queue mit Datei-Status, Progress, Speed, Retries
- Paket-Abbruch waehrend laufender Downloads inklusive sicherem Archiv-Cleanup
.dlcImport (Dateidialog und Drag-and-Drop)- Session-Persistenz (robustes JSON-State-Management)
- Auto-Resume beim Start (optional)
- Reconnect-Basislogik (429/503, Wartefenster, resumable priorisiert)
- Integritaetscheck (SFV/CRC32/MD5/SHA1) nach Download
- Auto-Retry bei Integritaetsfehlern
- Cleanup-Trigger fuer fertige Tasks:
- Nie
- Sofort
- Beim App-Start
- Sobald Paket fertig ist
Voraussetzungen
- Node.js 20+ (empfohlen 22+)
- Windows 10/11 (fuer Release-Build)
- Optional: 7-Zip/UnRAR fuer RAR/7Z Entpacken
Installation
npm install
Entwicklung
npm run dev
Build
npm run build
Danach liegen die Artefakte in:
build/mainbuild/renderer
Start (Production lokal)
npm run start
Tests
npm test
npm run self-check
npm test: Unit-Tests fuer Parser/Cleanup/Integritynpm run self-check: End-to-End-Checks mit lokalem Mock-Server (Queue, Pause/Resume, Reconnect, Paket-Cancel)
Projektstruktur
src/main: Electron Main Process + Download/Queue Logiksrc/preload: sichere IPC Bridgesrc/renderer: React UIsrc/shared: gemeinsame Typen und IPC-Channeltests: Unit- und Self-Check Tests
Hinweise
-
Runtime-Dateien liegen im Electron
userDataVerzeichnis:rd_downloader_config.jsonrd_session_state.jsonrd_downloader.log
-
Die bisherige Python-Datei bleibt vorerst als Legacy-Referenz im Repo, die aktive App ist jetzt Node/Electron.