spots-cli 0.1.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- spots_cli-0.1.0/.gitignore +17 -0
- spots_cli-0.1.0/LICENSE +675 -0
- spots_cli-0.1.0/PKG-INFO +146 -0
- spots_cli-0.1.0/README.md +117 -0
- spots_cli-0.1.0/api/main.py +38 -0
- spots_cli-0.1.0/api/server/__init__.py +324 -0
- spots_cli-0.1.0/api/server/download_music.py +161 -0
- spots_cli-0.1.0/api/server/static/Ball-1s-500px.svg +6 -0
- spots_cli-0.1.0/api/server/static/Magnify-1s-401px.svg +14 -0
- spots_cli-0.1.0/api/server/static/android-chrome-192x192.png +0 -0
- spots_cli-0.1.0/api/server/static/android-chrome-512x512.png +0 -0
- spots_cli-0.1.0/api/server/static/apple-touch-icon.png +0 -0
- spots_cli-0.1.0/api/server/static/arrow-down-circle-svgrepo-com.svg +7 -0
- spots_cli-0.1.0/api/server/static/avatar.jpg +0 -0
- spots_cli-0.1.0/api/server/static/download-svgrepo-com.svg +19 -0
- spots_cli-0.1.0/api/server/static/favicon-16x16.png +0 -0
- spots_cli-0.1.0/api/server/static/favicon-32x32.png +0 -0
- spots_cli-0.1.0/api/server/static/favicon.ico +0 -0
- spots_cli-0.1.0/api/server/static/house-svgrepo-com.svg +7 -0
- spots_cli-0.1.0/api/server/static/icon.jpg +0 -0
- spots_cli-0.1.0/api/server/static/single-cover(mdesigns).jpg +0 -0
- spots_cli-0.1.0/api/server/static/single-cover.jpg +0 -0
- spots_cli-0.1.0/api/server/static/youtube-playlist(mdesigns).jpg +0 -0
- spots_cli-0.1.0/api/server/static/youtube-playlist.jpg +0 -0
- spots_cli-0.1.0/api/site.webmanifest +1 -0
- spots_cli-0.1.0/pyproject.toml +51 -0
- spots_cli-0.1.0/requirements.txt +64 -0
- spots_cli-0.1.0/src/spots_cli/__init__.py +125 -0
- spots_cli-0.1.0/src/spots_cli/app/__init__.py +5 -0
- spots_cli-0.1.0/src/spots_cli/app/domain_resolver.py +157 -0
- spots_cli-0.1.0/src/spots_cli/app/downloader.py +78 -0
- spots_cli-0.1.0/src/spots_cli/app/media_resolver.py +180 -0
- spots_cli-0.1.0/src/spots_cli/app/spotify_playlist_compilation.py +251 -0
- spots_cli-0.1.0/src/spots_cli/app/youtube_user_playlist.py +215 -0
- spots_cli-0.1.0/src/spots_cli/bootstrap/__init__.py +1 -0
- spots_cli-0.1.0/src/spots_cli/bootstrap/container.py +230 -0
- spots_cli-0.1.0/src/spots_cli/cli.py +42 -0
- spots_cli-0.1.0/src/spots_cli/clients/__init__.py +5 -0
- spots_cli-0.1.0/src/spots_cli/clients/deezer.py +80 -0
- spots_cli-0.1.0/src/spots_cli/clients/secrets_manager.py +25 -0
- spots_cli-0.1.0/src/spots_cli/clients/spotify.py +79 -0
- spots_cli-0.1.0/src/spots_cli/clients/youtube.py +66 -0
- spots_cli-0.1.0/src/spots_cli/clients/ytdl.py +72 -0
- spots_cli-0.1.0/src/spots_cli/config/__init__.py +0 -0
- spots_cli-0.1.0/src/spots_cli/core/__init__.py +6 -0
- spots_cli-0.1.0/src/spots_cli/core/history_manager.py +39 -0
- spots_cli-0.1.0/src/spots_cli/core/lyrics_finder.py +58 -0
- spots_cli-0.1.0/src/spots_cli/core/pattern_matcher.py +226 -0
- spots_cli-0.1.0/src/spots_cli/core/video_converter.py +146 -0
- spots_cli-0.1.0/src/spots_cli/core/web_scraper.py +82 -0
- spots_cli-0.1.0/src/spots_cli/core/youtube_extractor.py +162 -0
- spots_cli-0.1.0/src/spots_cli/engine/__init__.py +3 -0
- spots_cli-0.1.0/src/spots_cli/engine/file_storage.py +347 -0
- spots_cli-0.1.0/src/spots_cli/engine/persistence_model.py +3 -0
- spots_cli-0.1.0/src/spots_cli/engine/retry.py +34 -0
- spots_cli-0.1.0/src/spots_cli/integrations/__init__.py +1 -0
- spots_cli-0.1.0/src/spots_cli/integrations/spotify_user_playlist_modify.py +47 -0
- spots_cli-0.1.0/src/spots_cli/models/__init__.py +24 -0
- spots_cli-0.1.0/src/spots_cli/models/artist_metadata.py +23 -0
- spots_cli-0.1.0/src/spots_cli/models/errors.py +69 -0
- spots_cli-0.1.0/src/spots_cli/models/helper_models.py +25 -0
- spots_cli-0.1.0/src/spots_cli/models/media_resource.py +20 -0
- spots_cli-0.1.0/src/spots_cli/models/metadata.py +36 -0
- spots_cli-0.1.0/src/spots_cli/models/metadata_provider.py +52 -0
- spots_cli-0.1.0/src/spots_cli/models/playlist_info.py +27 -0
- spots_cli-0.1.0/src/spots_cli/models/search_provider.py +65 -0
- spots_cli-0.1.0/src/spots_cli/models/sentinel.py +4 -0
- spots_cli-0.1.0/src/spots_cli/models/yt_video_info.py +29 -0
- spots_cli-0.1.0/src/spots_cli/scripts/__init__.py +2 -0
- spots_cli-0.1.0/src/spots_cli/scripts/add_to_history.py +45 -0
- spots_cli-0.1.0/src/spots_cli/scripts/bootstrap.py +92 -0
- spots_cli-0.1.0/src/spots_cli/scripts/duplicate_songs_remover.py +54 -0
- spots_cli-0.1.0/src/spots_cli/services/__init__.py +8 -0
- spots_cli-0.1.0/src/spots_cli/services/deezer_metadata_service.py +108 -0
- spots_cli-0.1.0/src/spots_cli/services/deezer_search_service.py +132 -0
- spots_cli-0.1.0/src/spots_cli/services/provider_search_container.py +67 -0
- spots_cli-0.1.0/src/spots_cli/services/providers_metadata.py +22 -0
- spots_cli-0.1.0/src/spots_cli/services/spotify_metadata_service.py +151 -0
- spots_cli-0.1.0/src/spots_cli/services/spotify_search_service.py +228 -0
- spots_cli-0.1.0/src/spots_cli/services/youtube_metadata_service.py +73 -0
- spots_cli-0.1.0/src/spots_cli/services/youtube_search_service.py +211 -0
- spots_cli-0.1.0/src/spots_cli/setup_env.py +118 -0
- spots_cli-0.1.0/src/spots_cli/utils/__init__.py +4 -0
- spots_cli-0.1.0/src/spots_cli/utils/config_dir.py +17 -0
- spots_cli-0.1.0/src/spots_cli/utils/detect_browser.py +30 -0
- spots_cli-0.1.0/src/spots_cli/utils/fetch.py +73 -0
- spots_cli-0.1.0/src/spots_cli/utils/search_fallbacks.py +21 -0
- spots_cli-0.1.0/tests/clients/test_deezer.py +11 -0
- spots_cli-0.1.0/tests/clients/test_secrets_manager.py +0 -0
- spots_cli-0.1.0/tests/clients/test_spotify.py +145 -0
- spots_cli-0.1.0/tests/clients/test_youtube.py +149 -0
- spots_cli-0.1.0/tests/clients/test_ytdl.py +155 -0