# SpoTUI
![Version Badge](https://img.shields.io/pypi/v/spotui)
![License Badge](https://img.shields.io/github/license/ceuk/spotui)
![Code size Badge](https://img.shields.io/github/languages/code-size/ceuk/spotui)
Spotify in the terminal.
![screenshot](https://i.imgur.com/7syOTKb.gif)
Getting Started
-----------
Install with ```pip install spotui```
**Please Note:** SpoTUI will not work with free Spotify accounts.
Register a developer application at: [https://developer.spotify.com/dashboard/login]( https://developer.spotify.com/dashboard/login). Once you create the application you'll need to edit it to add a Redirect URI. Use something like 'http://localhost:8888/callback' (it doesn't matter what you use really as long as it matches what's in your config file).
Run `spotui` to generate a sample config file at ~/.config/spotui/.spotuirc or create one manually with the following:
```
[spotify_api]
user_name = *Your spotify username*
client_id = *Your application client ID*
client_secret = *Your application secret*
redirect_uri = http://localhost:8888/callback
[other]
use_nerd_fonts = yes
config_version = 1
```
Once you're done start the app with `spotui`, log in via your browser and copy the URL of the broken web page you're taken to. *(This ugly authentication process is part of the underlying Spotipy library I use so don't blame me :stuck_out_tongue_winking_eye:)*
This app acts like a kind of remote control for Spotify. The best way to use it is in conjunction with [Spotifyd](https://github.com/Spotifyd/spotifyd) which means you won't need to actually have Spotify open. Alternatively, you can just open Spotify on your computer, phone etc. (press `d` to pick the device to play on).
Controls
-------
**Navigation**
`tab` Switch section
`k`/`↑` Up
`j`/`↓` Down
`g` Scroll to top
`G` Scroll to bottom
`Enter` Select
`/` Search
`d` Open device menu
`Esc`/`q` Quit/Back
**Playback**
`space` Play/Pause
`n` Next track
`p` Previous track
`→` Seek 10s forwards
`←` Seek 10s backwards
`s` Toggle shuffle
`r` Toggle repeat
FAQ
----
* **What do I do if something breaks?** [Raise an issue](https://github.com/ceuk/spotui/issues/new) or submit a PR to fix my crappy code :pray:
* **Why can't I play anything?** Check you have a device selected (d) and make sure you're using a paid Spotify account
* **I get an error page when I log into Spotify** This is correct - just copy the URL and paste it back into the terminal
* **Podcasts aren't playing** See: #13
Dependencies
-----------
* [Spotipy](https://spotipy.readthedocs.io/en/latest/)
LICENSE
------
MIT
Raw data
{
"_id": null,
"home_page": "https://github.com/ceuk/spotui",
"name": "spotui",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.4",
"maintainer_email": "",
"keywords": "spotify spotifytui",
"author": "ceuk",
"author_email": "",
"download_url": "https://files.pythonhosted.org/packages/2e/19/8636e8974cdc3a4723038c5d89b1251ef1ccb328bfd5441ad91ad6f69df3/spotui-0.1.20.tar.gz",
"platform": null,
"description": "# SpoTUI\n![Version Badge](https://img.shields.io/pypi/v/spotui)\n![License Badge](https://img.shields.io/github/license/ceuk/spotui)\n![Code size Badge](https://img.shields.io/github/languages/code-size/ceuk/spotui)\n\nSpotify in the terminal. \n\n![screenshot](https://i.imgur.com/7syOTKb.gif)\n\nGetting Started\n-----------\n\nInstall with ```pip install spotui```\n\n**Please Note:** SpoTUI will not work with free Spotify accounts.\n\nRegister a developer application at: [https://developer.spotify.com/dashboard/login]( https://developer.spotify.com/dashboard/login). Once you create the application you'll need to edit it to add a Redirect URI. Use something like 'http://localhost:8888/callback' (it doesn't matter what you use really as long as it matches what's in your config file).\n\nRun `spotui` to generate a sample config file at ~/.config/spotui/.spotuirc or create one manually with the following:\n\n```\n[spotify_api]\nuser_name = *Your spotify username*\nclient_id = *Your application client ID*\nclient_secret = *Your application secret*\nredirect_uri = http://localhost:8888/callback\n\n[other]\nuse_nerd_fonts = yes\nconfig_version = 1 \n```\n\nOnce you're done start the app with `spotui`, log in via your browser and copy the URL of the broken web page you're taken to. *(This ugly authentication process is part of the underlying Spotipy library I use so don't blame me :stuck_out_tongue_winking_eye:)*\n\nThis app acts like a kind of remote control for Spotify. The best way to use it is in conjunction with [Spotifyd](https://github.com/Spotifyd/spotifyd) which means you won't need to actually have Spotify open. Alternatively, you can just open Spotify on your computer, phone etc. (press `d` to pick the device to play on).\n\n\n\n\nControls\n-------\n\n**Navigation**\n\n`tab` Switch section\n\n`k`/`\u2191` Up\n\n`j`/`\u2193` Down\n\n`g` Scroll to top\n\n`G` Scroll to bottom\n\n`Enter` Select\n\n`/` Search \n\n`d` Open device menu\n\n`Esc`/`q` Quit/Back\n\n**Playback**\n\n`space` Play/Pause\n\n`n` Next track\n\n`p` Previous track\n\n`\u2192` Seek 10s forwards\n\n`\u2190` Seek 10s backwards\n\n`s` Toggle shuffle\n\n`r` Toggle repeat\n\n\nFAQ\n----\n\n* **What do I do if something breaks?** [Raise an issue](https://github.com/ceuk/spotui/issues/new) or submit a PR to fix my crappy code :pray:\n* **Why can't I play anything?** Check you have a device selected (d) and make sure you're using a paid Spotify account\n* **I get an error page when I log into Spotify** This is correct - just copy the URL and paste it back into the terminal\n* **Podcasts aren't playing** See: #13\n\nDependencies\n-----------\n\n* [Spotipy](https://spotipy.readthedocs.io/en/latest/)\n\nLICENSE\n------\n\nMIT\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Spotify TUI",
"version": "0.1.20",
"split_keywords": [
"spotify",
"spotifytui"
],
"urls": [
{
"comment_text": "",
"digests": {
"md5": "cceec4515358c3fe9570239b53159571",
"sha256": "b39318cc38a7f11d63a0ceda67ac52df7b9038e989d54deadc7c727619eadf3c"
},
"downloads": -1,
"filename": "spotui-0.1.20-py3-none-any.whl",
"has_sig": false,
"md5_digest": "cceec4515358c3fe9570239b53159571",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.4",
"size": 19234,
"upload_time": "2022-12-28T14:27:39",
"upload_time_iso_8601": "2022-12-28T14:27:39.871053Z",
"url": "https://files.pythonhosted.org/packages/ce/db/f9dcd0c6f28076d7c6c934333bad32067cb6001fb9ee921f58368ffd338c/spotui-0.1.20-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "9d2e94882a2f317751c8a59b660a027d",
"sha256": "340aa83187d91d14b0bae82b24954e630eb6b36418988b4115a224809a980e39"
},
"downloads": -1,
"filename": "spotui-0.1.20.tar.gz",
"has_sig": false,
"md5_digest": "9d2e94882a2f317751c8a59b660a027d",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.4",
"size": 15103,
"upload_time": "2022-12-28T14:27:41",
"upload_time_iso_8601": "2022-12-28T14:27:41.848527Z",
"url": "https://files.pythonhosted.org/packages/2e/19/8636e8974cdc3a4723038c5d89b1251ef1ccb328bfd5441ad91ad6f69df3/spotui-0.1.20.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2022-12-28 14:27:41",
"github": true,
"gitlab": false,
"bitbucket": false,
"github_user": "ceuk",
"github_project": "spotui",
"travis_ci": true,
"coveralls": false,
"github_actions": true,
"lcname": "spotui"
}