A minimalistic window with lyrics synced to Spotify
on the surface of your screen
Usage and Features
·
Report Bug
·
Request Feature
Table of Contents
A minimalistic window that shows you the current song playing on Spotify with synced lyrics.
The application is non-distracting with all the information you need about the song you are listening to.
This window is pinned to the top of the screen for all your lyrics needs.
Synced Lyrics
Lyrics are shown at the center of the interface, with a following rectangle.
Automatic Lyric Scrolling
The lyrics scroll down automatically.
But what if you want to read the lyrics? Then just scroll.
Once you're done, just click the follow button, and the lyrics will scroll automatically once again.
Live Lyrics Fetching
The application searches for lyrics immediately after you change songs on Spotify.
Quick Access Controls *
With the quick access controls, you can play/pause, skip, return, shuffle, and repeat songs with the click of a singular button.
* Note that some of these functions require Spotify Premium to work. If you do not have Spotify Premium, the play/pause, skip, and return buttons will attempt to skip directly from the device. This function will only work on Windows machines.
Window Dragging, Resize, and Alignment Lock
The window can be dragged and resized like a normal window, but when dragging the window near the side of the screen, the window locks and aligns to the side or at the taskbar.
- Clone or download this repo
- Install the required dependencies with pip command:
pip install -r requirements.txt
The following 3 tokens can be put into an environment variable.
To do this, create a file named .env
in your folder containing the main.py
file.
In the file, enter the following, replacing <TOKEN>
with your respective token.
SPOTIFY_REFRESH_TOKEN=<TOKEN> # refresh_token
SPOTIFY_BASE64_TOKEN=<TOKEN> # base64_encde(client_id:client_secret)
MUSIXMATCH_TOKEN=<TOKEN>
Follow this Youtube video from 1:22 to 14:32.
You will only need to save 2 tokens from this video:
- Spotify Refresh Token (14:25)
- Spotify Base64 Token (10:50)
reference Go to Spotify Developer Dashboard. Click "Create an App." Fill in the App name, App description, and Redirect URIs fields. Tick the boxes for Web API and Understand. Tick the box to agree to Spotify's TOS and Design Guidelines. After that, inside the app's dashboard, click on Settings. In the Basic Information tab, copy the Client ID. Click View client secret to copy.
client_id=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
client_secret=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Visit this link and replace all the required values.
https://accounts.spotify.com/authorize?client_id={client_id}}&response_type=code&redirect_uri={url_encode(Redirect URIs)}&scope=playlist-modify-public%20playlist-modify-private%20user-modify-playback-state%20user-read-playback-state%20user-modify-playback-state
After authorizing and agreeing, you will see a URL like https://your-redirect-uris.com/?code=xxxxxxx
. Copy the code from the URL.
code=xxxxxxx...
Now run this curl command and replace all the required values.
curl -H "Authorization: Basic {base64_encode(client_id:client_secret)}" -d grant_type=authorization_code -d code={code} -d redirect_uri={url_encode(Redirect URIs)} https://accounts.spotify.com/api/token
Once complete curl command, turn json response. Please copy value of refresh_token
You may remove the MUSIXMATCH_TOKEN
variable from the .env
file if you do not have a Musixmatch token.
Do not leave the variable unfilled.
Keep in mind that the default token provided may not work 100% of the time and is likely rate limited.
In order to get a new Musixmatch token, follow steps 1 - 5 with the guide here.
This project was developed by PureAspiration
.
Distributed under the MIT License. See LICENSE
for more information.