mirror of
https://github.com/PR0M3TH3AN/LBRY-Downloader.git
synced 2026-10-27 16:32:30 +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
5.0 KiB
5.0 KiB
Documentation Index
Not sure where to start? This guide helps you find the right documentation.
🚀 Getting Started
New user? Start here:
-
LINUX_SETUP.md - Complete Linux installation guide
- System requirements
- Step-by-step installation
- Configuration examples
- Troubleshooting common issues
- Setting up automation
-
QUICKSTART.md - Get running in 5 minutes
- Minimal setup instructions
- Basic usage
- Common commands
-
README.md - Project overview
- Features
- Basic usage
- Architecture
📖 Detailed Documentation
For Users
- README.md - Main project documentation
- LINUX_SETUP.md - Linux-specific setup (Debian/Ubuntu/Mint)
- QUICKSTART.md - Quick start guide
- config.yaml.example - Example configuration
- PER_CHANNEL_PATHS.md - Per-channel download paths guide
Setup Scripts
-
setup.py - Interactive installation script (recommended)
- Checks dependencies
- Sets up virtual environment
- Configures download location
- Sets up channels
- Creates launcher scripts
-
uninstall.py - Uninstallation script
- Finds installation automatically
- Shows what will be removed
- Asks for confirmation
- Cleans up PATH entries
For Developers
-
SPEC.md - Detailed implementation specification
- Architecture decisions
- Data models
- API design
- File structure
- State management
-
AGENTS.md - Development guidelines
- Coding standards
- Architecture rules
- Testing requirements
- Change policies
-
CHANGELOG.md - Version history and changes
🔧 Setup Guides by Platform
Linux (Debian/Ubuntu/Mint)
Quick Install:
./install.sh
Manual Install: See LINUX_SETUP.md for:
- Installing Python and dependencies
- Installing lbrynet daemon
- Configuration setup
- Systemd service setup
- Cron job automation
Other Platforms
The tool should work on any platform with Python 3.8+, but you'll need to:
- Install Python 3 and pip
- Install the LBRY SDK (
lbrynet) - Install Python dependencies from
requirements.txt - Run
python init.py
📋 Configuration
- Example: config.yaml.example
- Location:
~/Documents/lbry-downloads/config.yaml - Format: YAML
🧪 Development
Running Tests
make test
# OR
python -m pytest tests/ -v
Code Structure
main.py - Entry point
models.py - Data structures
utils.py - Helper functions
config_loader.py - Configuration parsing
lbry_client.py - Daemon communication
state_db.py - State management
planner.py - Download decisions
downloader.py - Download execution
See SPEC.md for detailed architecture.
🐛 Troubleshooting
Common issues are covered in:
- LINUX_SETUP.md - Platform-specific issues
- README.md - General troubleshooting
- AGENTS.md - Development/debugging
📦 Additional Files
- install.sh - Automated Linux installer
- init.py - Configuration initialization
- Makefile - Common development tasks
- pyproject.toml - Python package configuration
- requirements.txt - Python dependencies
📝 Contributing
- Read AGENTS.md for development guidelines
- Review SPEC.md for architecture details
- Follow existing code style
- Add tests for new features
- Update documentation
🔗 External Resources
- LBRY SDK: https://github.com/lbryio/lbry-sdk
- LBRY Website: https://lbry.com
- Odysee: https://odysee.com
🆘 Getting Help
- Check the logs:
~/Documents/lbry-downloads/state/run-history.jsonl - Run with debug mode: Set
log_level: "DEBUG"in config - Test daemon:
curl http://127.0.0.1:5279 - Review LINUX_SETUP.md troubleshooting section
📚 Documentation Roadmap
- README - Project overview
- QUICKSTART - Quick start guide
- LINUX_SETUP - Linux installation
- SPEC - Implementation details
- AGENTS - Development guidelines
- CHANGELOG - Version history
- API documentation (generated)
- Video tutorial (future)
- FAQ (future)
🎯 Quick Reference
Most users need:
- LINUX_SETUP.md - To install
- config.yaml.example - To configure
- README.md - To understand features
Developers need:
- AGENTS.md - To understand code standards
- SPEC.md - To understand architecture
- Source code - Well-commented Python files
Can't find what you need?
- Check the source code - it's well-documented
- Look at the tests in
tests/for usage examples - Review SPEC.md for design decisions