mirror of
https://github.com/PR0M3TH3AN/LBRY-Downloader.git
synced 2026-10-27 08:22:24 +00:00
Features: - Incremental sync with version tracking (sd_hash) - Per-channel download paths - Download limit (default: 10 most recent per channel) - Interactive setup script with user prompts - Uninstall script for clean removal - Comprehensive test suite (42 tests) - Full documentation suite Files: - 9 Python core modules (main, models, utils, config, client, state, planner, downloader, init) - 3 Setup scripts (setup.py, uninstall.py, install.sh) - 5 Test files (42 tests, all passing) - 9 Documentation files - 4 Build/config files Total: 31 files, ~4,500 lines
1.5 KiB
1.5 KiB
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog.
[Unreleased]
Added
- Initial implementation of LBRY Downloader
- Support for incremental sync of LBRY/Odysee channels
- Version tracking using sd_hash
- Atomic state database writes
- Configurable YAML configuration
- Dry-run mode for testing
- Run history logging in JSONL format
- Comprehensive test suite
- Support for Odysee URLs, LBRY URIs, and claim IDs
- Automatic path sanitization
- Checksum generation for downloaded files
- Per-channel download paths - Each channel can have its own download location
- Download limit - Limit downloads to most recent N items per channel (default: 10)
- Interactive setup script - Automated installation with user prompts
- Uninstall script - Easy removal of the application
Technical Details
- JSON-RPC client for lbrynet daemon
- Modular architecture with clear separation of concerns
- State management with claim and version tracking
- Download planning and execution pipeline
- Comprehensive error handling
Future Ideas
Planned
- SQLite state database option for large archives
- Tag-based filtering
- Date range filtering
- Parallel download support with rate limiting
- Resume interrupted downloads
- Export reports (CSV, JSON)
- Webhook notifications
Under Consideration
- GUI interface
- Docker containerization
- Automatic thumbnail/metadata download
- Video format selection
- Bandwidth limiting