Release v0.2.0
What's Changed
This release brings significant improvements to the Media Downloader's architecture, stability, and user experience. Major code refactoring and bug fixes have been implemented to ensure more reliable downloads across all supported platforms.
Architecture Improvements
- Complete Code Restructuring: Implemented proper MVC architecture with clear separation of concerns
- Base Downloader Class: Added abstract base class for standardized downloader implementations
- Thread-Safe Operations: Improved handling of concurrent downloads and UI updates
- Message Queue System: Added non-blocking notification system for better user feedback
- Proper Download List Added Proper Download list mechanism and fixed issues in that regard
Feature Enhancements
-
YouTube Downloads:
-
Fixed quality selection functionality
-
Improved playlist downloading
-
Added proper audio-only option support
-
Enhanced progress tracking accuracy
-
Twitter Integration:
-
Improved media detection and extraction
-
Added support for both X.com and Twitter.com URLs
-
Fixed progress bar functionality for Twitter downloads
-
Instagram Features:
-
Enhanced authentication system
-
Improved carousel post handling
-
Added proper progress tracking for Instagram downloads
-
Better error handling for authentication failures
-
Pinterest Support:
-
Added high-quality image extraction
-
Implemented proper progress tracking
-
Enhanced error handling for failed downloads
UI Improvements
-
File Management:
-
Added new file browser dialog
-
Implemented directory navigation
-
Added folder creation capability
-
Improved download location management
-
Progress Tracking:
-
Added unified progress system across all platforms
-
Implemented proper download status updates
-
Added individual item progress tracking
-
Fixed progress bar animations
Bug Fixes
- Fixed Pinterest download progress not showing correctly
- Resolved Instagram authentication state issues
- Fixed YouTube options not persisting between downloads
- Corrected progress bar behavior for all platforms
- Fixed memory leaks in download manager
Installation & Usage
- Removed Windows installer in favor of Python package structure
- Added proper virtual environment setup instructions
- Improved cross-platform compatibility
- Added quick launch setup guides for both Windows and Linux
Documentation
- Added comprehensive README
- Included detailed installation guides
- Added troubleshooting section
- Improved code documentation
Breaking Changes
- Changed application launch method to
python -m src.main
- Modified project structure to follow Python package standards
- Changed how downloaders handle progress callbacks
Technical Details
Dependencies
- customtkinter
- yt-dlp
- instaloader
- requests
- beautifulsoup4
Project Structure
src/
├── controllers/ # Business logic
├── downloaders/ # Platform implementations
├── models/ # Data structures
├── ui/ # User interface
│ ├── components/ # UI elements
│ ├── dialogs/ # Popup windows
│
└── utils/ # Common utilities
Known Issues
- Instagram bulk downloads may require periodic re-authentication
- YouTube playlists with mixed private videos may cause incomplete downloads
- Twitter media from protected accounts requires authentication (planned for future release)
Upgrade Guide
- Backup your existing configuration
- Create a new virtual environment
- Install updated dependencies
- Run using new module format:
python -m src.main
Acknowledgments
Special thanks to the creators of yt-dlp
, requests
, BeautifulSoup
, and Instaloader
.
Future Plans
- Batch download improvements
- Implementing Stop/Start mechanism
- Setting parallel download (1,2,3,...,6 threads being used)
- Proper Retry mechanism
- Wizard Installer
- Additional platform support
- Enhanced error recovery