A simple spotify tool for the terminal
Project description
Spotr - A spotify tool for the terminal
A very simple CLI for controlling your spotify on the fly in the terminal.
Made in python for simplicity
NEWS
It is now possible to bring the pictures into the terminal with image to ascii convertion!
Use "ascii" command to show image
Or set ASCII variable to True in config.json to replace spotify logo with ascii image for "current" command
Installation
$ pip install spotrpy
Or clone the repo and install locally
$ pip install -e .
-
Register an app in spotify for developers "https://developer.spotify.com/dashboard/applications"
- Also set callback URI to "https://www.google.com/"
-
Run any spotr command
- If command is not recognized, you might have to add wherever python stores packages to path, this can be different depending on OS.
- Linux - on linux add "~/.local/bin" to your $PATH, this can be done by adding the following line to your .rc file (export PATH="$HOME/.local/bin:$PATH")
- MacOs - on mac i personally fixed it by adding this to my .zshrc file (export PATH="$HOME/Library/Python/3.11/bin:$PATH") Here you have to change the python verion number accordingly
- If command is not recognized, you might have to add wherever python stores packages to path, this can be different depending on OS.
-
You will be prompted to create config.json and paste in client and secret id from spotify app
-
After these steps everything should work and you can enjoy spotr
Built-in Commands
ascii - Ascii image for current track
authorise - Authenticate with Spotify API
config - Modify config values in the terminal
current - Display information about the current track
next - Play next track
playback - Set playback state
playlist - Choose a playlist
playlistadd - Add currently playing track to playlist
previous - Play previous track
qsearch - Quicksearch for tracks
queue - Get Queue
recent - Get recently played tracks
recommend - Play random / recommended tracks based on recent tracks
refresh - Refresh API key
replay - Replay/Restart currently playing song
search - Search for anything on spotify, Types - track, playlist, album
seek - Seek posistion for track in seconds
shuffle - Toggle shuffle, on / off
start - Start/Resume playing
stop - Stop/Pause playing
vol - Ajust volume
volume - Ajust volume
web - Open currently playing track in a broswer
Debug mode
Simply change the debug variable in config.json file to enable debug mode (DEBUG="True")
Modifications
You can easily create your own commands and scripts by adding a function in router.py
As soon as the function is created and saved you can run it on the terminal with (spotr function-name)
I recommend going to spotifys API documentation to get a grasp of what is possible
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.