A stylish, interactive desktop application that brings your Spotify playback to life with a retro vinyl record animation. This project uses Python to fetch real-time data from Spotify and displays it on a dynamic, blurred-background GUI.
This application connects to your Spotify account and:
- Tracks Live Music: Detects what you are currently listening to.
- Dynamic Visuals: Downloads album art and transforms it into a rotating vinyl sticker.
- Immersive UI: Features a blurred background based on the current album cover.
- Animated Elements: Includes a spinning vinyl record and a classic record player arm.
- Real-time Synchronization: Polling system that updates the song info every 2 seconds.
- Smooth Animation: High-frequency rotation loop (20ms) for a realistic spinning effect.
- Image Processing: Uses the
PIL(Pillow) library for Gaussian blurs, circular masks, and rotations.
- Language: Python 3.x
- GUI Framework:
tkinter - API: Spotipy (Spotify Web API wrapper)
- Image Handling:
Pillow(PIL) - Networking:
requests
-
Spotify Developer Account:
- Create an app on the Spotify Developer Dashboard.
- Set the Redirect URI to:
https://github.com/lorenkr/spotify-turntable/blob/main/docs/callback.html
-
Environment Variables: Create a
.envfile in the root directory and add your credentials:CLIENT_ID=your_client_id_here CLIENT_SECRET=your_client_secret_here
