> For the complete documentation index, see [llms.txt](https://docs.spotify-sync.jbh.cloud/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.spotify-sync.jbh.cloud/home/intro.md).

# Intro

spotify\_sync is a CLI app written in Python that allows you to download songs from your Spotify account. It is designed to be a 'set and forget' tool for users wanting to keep an offline copy of their songs.

This is achieved by linking your Spotify account to a configuration and then running spotify\_sync either manually or on a schedule.

Directly downloading songs from Spotify is currently impossible. To work around this, song metadata is downloaded from Spotify which is then used to match it to a Deezer equivalent. Songs that are successfully matched are then queued for download via the [Deemix Api](https://deemix.app).

Currently, spotify\_sync features include:

* Download of liked songs
* Download of playlist songs
* Up-to lossless quality downloads
* Multi-threaded downloading
* Scheduling (e.g. cron)
* Multi-config support; configure and schedule multiple profiles with separate Spotify accounts
* Backup and restore of config and persistent data
* Runtime notification support via [Pushover](https://pushover.net)
* Automatic Plex library scanning via [Autoscan](https://github.com/Cloudbox/autoscan)
