Skip to content

A lightweight Python bot that automatically monitors one or multiple Spotify playlists and sends you instant push notifications via Pushover when new songs are added.

License

Notifications You must be signed in to change notification settings

NotSlater/spotify-playlist-watcher

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🎵 Trackify - A Spotify Playlist Tracking Bot

Python Spotify Web API Pushover Deployment


📚 Table of Contents


📖 About

A lightweight Python bot that automatically monitors one or more Spotify playlists and sends you instant push notifications via Pushover when new songs are added.


✨ Features

  • ✅ Detects newly added songs
  • ✅ Sends instant notifications with song title & artist
  • ✅ Tracks multiple playlists
  • ✅ Automatically refreshes Spotify tokens (no manual input required)
  • ✅ Railway-ready (free cloud hosting)
  • ✅ Configurable check interval

⚙️ Tech Stack

Tool Purpose
Python Core programming language
Spotify Web API Playlist data access
Pushover API Mobile Push notifications
Railway Cloud hosting
JSON Local data storage (playlist snapshots)

🚀 Installation & Setup

1️⃣ Create a Spotify Developer Application

  1. Go to the Spotify Developer Dashboard
  2. Create a new app and fill it in:
    • Trackify
    • Tracks playlists on psotify
  3. Under Redirect URIs, add:
    • http://localhost:8080/callback
  4. Under API/SDKs, select:
    • Web API
  5. Go to the app and hit settings and copy:
    • Client ID
    • Client Secret

2️⃣ Create a Pushover Application

  1. Download Pushover on your device
  2. Create a new app
  3. Copy your:
  • User Key
  • API Token/Key

3️⃣ Generate Spotify Refresh Token

Follow the prompts to generate a permanent refresh token.
This prevents you from having to generate a new Spotify API key every hour.

python spotify_refresh_token_generator.py

4️⃣ Fork the Repository

  1. Fork this repository to your own GitHub account
  2. Fill these fields:
CLIENT_ID = "your_client_id"
CLIENT_SECRET = "your_client_secret"
REFRESH_TOKEN = "your_refresh_token"

PUSHOVER_USER_KEY = "your_pushover_user_key"
PUSHOVER_API_TOKEN = "your_pushover_api_token"

SPOTIFY_PLAYLISTS = {
    "My Playlist": "your_playlist_id"
}

You can also add multiple playlists like this:

SPOTIFY_PLAYLISTS = {
    "Playlist 1": "playlist_id_1",
    "Playlist 2": "playlist_id_2"
}

5️⃣ Connect to Railway

  1. Sign into Railway using github
  2. Select the forked repo in Railway
  3. Let it run

About

A lightweight Python bot that automatically monitors one or multiple Spotify playlists and sends you instant push notifications via Pushover when new songs are added.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published