- Moved main execution logic to cli.py and updated imports accordingly.
- Created a new __init__.py file to export the main function from the cli module.
- Implemented the PlaylistDownloader class in downloader.py to handle playlist downloading logic.
- Added ConfigLoader class in config.py to manage configuration settings.
- Introduced PlaylistManager class in manager.py to manage multiple playlists.
- Updated encoding handling for Windows in the main execution block.
- Removed redundant code and improved overall structure for better readability and maintainability.
- Implemented a new script (yt-playlist-main.py) for downloading audio from YouTube playlists.
- Added configuration file (yt-playlist-config.json) to specify playlists, save paths, and binary paths.
- Integrated error handling and validation for required binaries (yt-dlp, ffmpeg, aria2c).
- Included functionality to update yt-dlp automatically.
- Added support for parallel downloads and cleanup of removed tracks.
- Implemented renumbering of downloaded tracks based on playlist order.