{"id":19529826,"url":"https://github.com/yayuniversal/playlist-sync","last_synced_at":"2025-12-14T19:32:32.870Z","repository":{"id":48114475,"uuid":"470405944","full_name":"yayuniversal/playlist-sync","owner":"yayuniversal","description":"A little command line tool to download and sync playlists from Deezer or Spotify to predefined folders.","archived":false,"fork":false,"pushed_at":"2024-02-07T00:59:12.000Z","size":21,"stargazers_count":17,"open_issues_count":1,"forks_count":4,"subscribers_count":2,"default_branch":"main","last_synced_at":"2024-10-30T04:31:11.127Z","etag":null,"topics":["deemix","deezer","deezer-downloader","deezer-playlist","playlist-downloader","playlists","python","python3","spotify","spotify-downloader","spotify-playlist"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/yayuniversal.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2022-03-16T02:37:55.000Z","updated_at":"2024-10-26T23:33:56.000Z","dependencies_parsed_at":"2024-02-07T01:46:38.865Z","dependency_job_id":"ccdfcc9d-b7e5-48ba-9bf0-6080a85349f9","html_url":"https://github.com/yayuniversal/playlist-sync","commit_stats":{"total_commits":1,"total_committers":1,"mean_commits":1.0,"dds":0.0,"last_synced_commit":"2abfd9caae2e0b4583c7c2096bded83146bdcdbb"},"previous_names":["yayuniversal/playlist-sync"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yayuniversal%2Fplaylist-sync","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yayuniversal%2Fplaylist-sync/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yayuniversal%2Fplaylist-sync/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yayuniversal%2Fplaylist-sync/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/yayuniversal","download_url":"https://codeload.github.com/yayuniversal/playlist-sync/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224034581,"owners_count":17244818,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["deemix","deezer","deezer-downloader","deezer-playlist","playlist-downloader","playlists","python","python3","spotify","spotify-downloader","spotify-playlist"],"created_at":"2024-11-11T01:27:47.466Z","updated_at":"2025-12-14T19:32:32.820Z","avatar_url":"https://github.com/yayuniversal.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Playlist-sync\n\n`playlist-sync` is a little command line tool to download and sync playlists from Deezer or Spotify to predefined folders. It reads playlists links and target folders from a JSON file.\n\nIt uses [`deemix`](https://pypi.org/project/deemix/) under the hood to actually download the playlists.\n\n## What you will need\n- Python \u003e= 3.8 with pip (untested on earlier versions of Python)\n- A Deeezer account. Since `deemix` downloads songs from Deezer, it uses your Deezer account to access Deezer servers and download music. So even if you only want to download Spotify playlists, you will **need** to have a Deezer account. Note that to download 320kbps MP3 or FLAC, you will need a Deezer Premium account. A free Deezer account only allow to download 128kbps MP3.\n- A Spotify account if you want to download playlists from Spotify.\n\n## Installation\nPlaylist-sync can be installed from [PyPI](https://pypi.org/project/playlist-sync/) with [`pipx`](https://pipx.pypa.io/):\n```\npipx install playlist-sync\n```\n`pipx` can be installed with `pip` if you don't have it installed:\n```\npip install pipx\npipx ensurepath\n```\n\nplaylist-sync can also be installed directly with pip, but pipx is recommanded for command-line applications since it creates an isolated environment for each application and its associated packages.\n\nThe package adds the `playlist-sync` command to the command line.\n\n## How to setup and use\nPlaylist-sync relies on two files, `config.json` and `playlists.json`, which must exist in the current working directory. `config.json` contains some general settings (Deezer ARL, Spotify API token, bitrate...), and `playlists.json` contains the links to your playlists as well as the target folders where you want them to be downloaded.\n\n`playlist-sync` can create templates for these two files so you only need to fill them. In your music library folder (where you want your playlists to be downloaded), run:\n```\nplaylist-sync init\n```\n\nIt will create the 2 json files. Fill them both as explained in the wiki, [here](https://github.com/lilianmallardeau/playlist-sync/wiki/The-config.json-file) and [here](https://github.com/lilianmallardeau/playlist-sync/wiki/The-playlists.json-file).\nOnce you've filled the `config.json` file with your Deezer ARL (and Spotify API client ID and secret if you want to download Spotify playlists) and the `playlists.json` file with your playlists links, to download them all at once in the desired folders, simply run:\n```\nplaylist-sync sync\n```\n\n\n## How to install and use easily on Windows\n1. If you don't have it installed already, download and install [Python](https://www.python.org). During installation, make sure to choose to update the PATH environment variable.\n2. Open the command prompt (search for \"cmd\" in the search bar) and type `pip install playlist-sync`\n3. Download the 2 scripts in the [`windows_scripts`](https://github.com/lilianmallardeau/playlist-sync/tree/main/windows_scripts) folder in this repo, and put them in your music library folder\n4. Double click on `playlist-sync_init.cmd`. It will create two json files, `config.json` and `playlists.json`, in the same folder.\n5. Fill the two json files as described [here](https://github.com/lilianmallardeau/playlist-sync/wiki/The-config.json-file) and [here](https://github.com/lilianmallardeau/playlist-sync/wiki/The-playlists.json-file).\n6. To download/update your playlists, simply double click on the `playlist-sync_sync.cmd` file\n\n\n---\n\n\n## Todo\n- Add support for SoundCloud and YouTube playlists, with [youtube-dl](http://ytdl-org.github.io/youtube-dl/)\n- Sync Serato/rekordbox crates with downloaded playlists\n- Use ISRC numbers to prevent downloading songs from different playlists twice, and make hardlinks between files instead\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyayuniversal%2Fplaylist-sync","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fyayuniversal%2Fplaylist-sync","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyayuniversal%2Fplaylist-sync/lists"}