Skip to main content

A simple spotify cli

Project description

spty

A simple Spotify CLI made with Click and Spotipy

This was done as a personal exercise in making CLIs. It's inspired by shpotify which is available for MacOS.

Setup

pip install spty

Alternatively, you can fork the repo if you wish to play around with it.

Shell Completion

This is optional, but enabling tab completion will let you explore and issue commands faster without having to consult --help.

For zsh:

_SPTY_COMPLETE=source_zsh spty >> ~/.zshrc

For bash:

_SPTY_COMPLETE=source_bash spty >> ~/.bashrc

Connecting with your Spotify

spty does not communicate with your local Spotify app directly but rather over API calls. It's a remote controller. As a prerequisite, you'll have to "create" a Spotify app at Spotify for Developers.

See their App Settings guide for more instructions. Note that your app's name and description doesn't matter as much for this CLI.

Usage

A spotify app must be running before the CLI can be used.

spty                      Show all commands
spty config               (Re)configure your Spotify app values

spty play                 Play or resume playback
spty play TRACK           Find a track and play it
spty play album ALBUM     Find an album and play it
spty play artist ARTIST   Find an artist and play its discography
spty play list PLAYLIST   Find a playlist and play it

spty pause                Pause the playback
spty stop                 Stop the playback
spty replay               Replay the current song
spty next                 Skip to the next song
spty previous (prev)      Play the previous song

spty fast-forward (ffwd)  Fast-forward by SECONDS (10 by default)
spty rewind (rew)         Rewind by SECONDS (10 by default)
spty seek                 Play current song at TIMESTAMP (e.g. 1:30)

spty vol                  Show current volume
spty vol up               Increase volume by 10
spty vol down             Decrease volume by 10
spty vol PERC             Set volume to PERC (0-100)
spty repeat               Set repeat mode (track, context, or off)
spty shuffle              Toggle shuffle or explicitly turn it on/off

spty status               Show playback status
spty status track         Show track title
spty status title         Show album title
spty status artist        Show artist/s
spty status -v            Show playback status, including shuffle and repeat state

spty share                Show the current song's url and uri
stpy share url            Show the current song's url
stpy share uri            Show the current song's uri

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

spty-0.1.3-py3-none-any.whl (20.0 kB view details)

Uploaded Python 3

File details

Details for the file spty-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: spty-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 20.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/47.1.1 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.6.9

File hashes

Hashes for spty-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 9e70f0540b8b2a1912d6b2253587ecbc949562d1cb5e8d31671954d025a0dfd5
MD5 fd5fb14a9daa28620597e748bb780a79
BLAKE2b-256 3ceee3550060e8e684bd37c3c71a99446cb9dec9a141c2cdc9e61c9788116ac1

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page