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.4-py3-none-any.whl (20.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: spty-0.1.4-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.4-py3-none-any.whl
Algorithm Hash digest
SHA256 241fc42c6326774beb0cfcba393a294f5761960cb3503a84b010180652aa74ab
MD5 00f8cc45a572aa3e003912848369792b
BLAKE2b-256 ad68b71c2d27c5685f53fe9ae0660464e058e4f8e9b0263dfdb19bb0dec0ec79

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