[x] Client server downloads tracks, album covers, lyrics from the main music server when an internet connection is available, and saves it to a new database (offline.db). It authenticates with the main server using a token stored in offline.db. If the token is not set or if the token is invalid, the user is interactively prompted to enter a username and password.
[x] Scanner subsystem is not used, instead music.db is updated from the main server.
[x] /get_track, /get_album_cover and /get_lyrics endpoint will serve content directly from offline.db without downloading, transcoding, converting, thumbnailing, caching, etc.
[x] Server runs in single user mode, without authentication and CSRF token validation
[x] All pages are disabled, except for the main music player page
[x] Now playing status is ignored
[x] Playback history is saved to a separate database (offline.db)
[ ] Submit playback history to server in sync script
[x] YouTube downloader in settings window is hidden
[x] Quality setting is not available, and is always forced to webm_opus_high in /get_track
offline.db
). It authenticates with the main server using a token stored inoffline.db
. If the token is not set or if the token is invalid, the user is interactively prompted to enter a username and password.music.db
is updated from the main server./get_track
,/get_album_cover
and/get_lyrics
endpoint will serve content directly fromoffline.db
without downloading, transcoding, converting, thumbnailing, caching, etc.offline.db
)