All Projects → spotlightify → Spotlightify

spotlightify / Spotlightify

Licence: gpl-3.0
The Spotify overlay controller

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Spotlightify

Hello imgui
Hello, Dear ImGui: cross-platform Gui apps for Windows / Mac / Linux / iOS / Android / Emscripten with the simplicity of a "Hello World" app
Stars: ✭ 120 (-36.84%)
Mutual labels:  cross-platform, gui
Omnigui
A cross-platform GUI framework from scratch just to learn
Stars: ✭ 147 (-22.63%)
Mutual labels:  cross-platform, gui
Phoenix
wxPython's Project Phoenix. A new implementation of wxPython, better, stronger, faster than he was before.
Stars: ✭ 1,698 (+793.68%)
Mutual labels:  cross-platform, gui
Nitroshare Desktop
Network file transfer application for Windows, OS X, & Linux
Stars: ✭ 1,150 (+505.26%)
Mutual labels:  cross-platform, gui
Minecraft World Downloader
Download Minecraft worlds, extend server's render distance
Stars: ✭ 187 (-1.58%)
Mutual labels:  cross-platform, gui
Nodegui Starter
A starter repo for NodeGui projects
Stars: ✭ 93 (-51.05%)
Mutual labels:  cross-platform, gui
Borealis
Hardware accelerated, controller and TV oriented UI library for PC and Nintendo Switch (libnx).
Stars: ✭ 135 (-28.95%)
Mutual labels:  cross-platform, gui
Gwen Nolegacy Opentk Renderer
A C# port of the GWEN GUI library, with an OpenTK renderer
Stars: ✭ 26 (-86.32%)
Mutual labels:  cross-platform, gui
Flameshot
Powerful yet simple to use screenshot software 🖥️ 📸
Stars: ✭ 15,429 (+8020.53%)
Mutual labels:  cross-platform, gui
Autopilot Rs
A simple, cross-platform GUI automation module for Rust.
Stars: ✭ 168 (-11.58%)
Mutual labels:  cross-platform, gui
Swspotify
Cross-platform library to get the currently playing song and artist from Spotify w/o using the API or the internet. Very fast.
Stars: ✭ 54 (-71.58%)
Mutual labels:  spotify, cross-platform
Gwork
Skinnable GUI with useful widget collection. Fork of GWEN.
Stars: ✭ 179 (-5.79%)
Mutual labels:  cross-platform, gui
Youtube Dl Gui
A cross platform front-end GUI of the popular youtube-dl written in wxPython.
Stars: ✭ 7,914 (+4065.26%)
Mutual labels:  cross-platform, gui
Shoes4
Shoes 4 : the next version of Shoes
Stars: ✭ 1,509 (+694.21%)
Mutual labels:  cross-platform, gui
Giu
Cross platform rapid GUI framework for golang based on Dear ImGui.
Stars: ✭ 862 (+353.68%)
Mutual labels:  cross-platform, gui
Avalonia
A cross platform XAML framework for .NET
Stars: ✭ 12,588 (+6525.26%)
Mutual labels:  cross-platform, gui
Nodegui
A library for building cross-platform native desktop applications with Node.js and CSS 🚀. React NodeGui : https://react.nodegui.org and Vue NodeGui: https://vue.nodegui.org
Stars: ✭ 7,324 (+3754.74%)
Mutual labels:  cross-platform, gui
Xtd forms
Modern c++17 library to create native gui for Microsoft Windows, Apple macOS and Linux.
Stars: ✭ 25 (-86.84%)
Mutual labels:  cross-platform, gui
Abandon
😌 Simple and Robust Accounting
Stars: ✭ 155 (-18.42%)
Mutual labels:  cross-platform, gui
Gtk Fortran
A GTK / Fortran binding
Stars: ✭ 171 (-10%)
Mutual labels:  cross-platform, gui

Spotlightify

Spotlightify is a GUI based application designed to allow users to quickly interact with the Spotify Desktop application across Windows, Linux and macOS.

Spotlightify

Prerequisites

  • Spotify Premium Account
  • Python 3.7 or later
  • A Spotify App must also be created, the instructions follow:
    1. Open the Spotify Developer Dashboard here and login using your Spotify account credentials.
    2. Click the "CREATE AN APP" button.
    3. Name the application "Spotlightify", write anything for the description and select "Desktop App" from the checkboxes. Click "NEXT".
    4. Respond with "No" to the question "Are you developing a commercial integration?".
    5. Tick all boxes and click "SUBMIT".
    6. Now on the dashboard, click "EDIT SETTINGS".
    7. Under the title "Redirect URIs" enter: "http://localhost:8080", hit "ADD" and then at the bottom, hit "SAVE".
    8. That is the App set up, keep the dashboard webpage open as we will need Client ID and Client Secret from it later on.

Installing Dependencies

OS Specific Setup

To setup a virtual environment, perform the following commands.

Windows

cd path\to\spotlightify-root
python -m venv venv
venv\Scripts\activate
pip install -r requirements.txt
python app.py

To run the application as an independent process (i.e. it will not end when the command line is exited), use: pythonw app.py

MacOS

cd path/to/spotlightify-root
python -m venv venv
. venv/bin/activate
pip install -r requirements.txt
python app.py

Linux

cd path/to/spotlightify-root
python3 -m venv venv
. venv/bin/activate
sudo apt-get install python3-pyqt5
pip3 install -r requirements.txt

python3 app.py

Linking the Spotify App

Run app.py to start the application.

On the Spotify App that you have created, take the values of Client ID, Client Secret and Redirect URI (Redirect URL is found when the "EDIT SETTINGS" button is clicked) from the website and input them into their respective textboxes. To make sure the correct username is entered into the username textbox, go to this link, get your exact username string and paste it (you only need to do this if you sign into Spotify using a service such as Facebook).

On first start up, Spotlightify will cache all of your liked and playlist songs, caching both song information and album art. So keep the app open for at least 10 minutes so that all of your songs can be cached.

Installing Fonts

The fonts found in assets/fonts must be installed for this to display correctly.

Usage

The GUI is activated by using the shortcut ctrl + space. Here is the current list of available functions:

List of Commands

| Name     | Description                                        | Prefix            | Parameter     |
|----------|----------------------------------------------------|-------------------|---------------|
| Play     | Find and play a song                               | play              | song name     |
| Queue    | Find and queues a song                             | queue             | song name     |
| Playlist | Find and play a saved/followed playlist            | playlist          | playlist name |
| Album    | Find and play a saved album                        | album             | album name    |
| Artist   | Find and play songs from a saved/followed artist   | artist            | artist name   |
| Liked    | Plays saved/liked music                            | liked             | None          |
| Volume   | Changes music volume                               | volume            | 1 - 10        |
| Go to    | Seeks a position in a song                         | goto              | e.g. 1:24     |
| Resume   | Resumes music playback                             | resume            | None          |
| Skip     | Skips the current song                             | next              | None          |
| Previous | Plays pervious song                                | previous          | None          |
| Pause    | Pauses music playback                              | pause             | None          |
| Shuffle  | Toggles shuffle playback                           | shuffle           | None          |
| Device   | Select device for music playback                   | device            | None          |
| Repeat   | Toggles repeating modes                            | repeat            | None          |
| Current  | Provides currently playing song info               | currently playing | None          |
| Share    | Copies the current song's URL to clipboard         | share             | None          |
| Exit     | Exits the application                              | exit              | None          |

List of Song Options

| Name                      | Description                                        |
|---------------------------|----------------------------------------------------|
| Add Song to Queue         | Adds the selected song to the queue                |
| Add Song to Playlist      | Adds the selected song to the selected playlist    |
| Play Song Radio           | Plays a Spotify radio related to the selected song |
| Save/Like Song            | Saves the selected song to user Spotify library    |
| Share Song                | Copies the selected song's URL to the clipboard    |

Song options are shown by holding down either shift key and left clicking/pressing the enter key on the song.

Additional Information

Built With

  • Spotipy - A Spotify API wrapper for Python
  • PyQt5 - A cross platform GUI framework for Python

Reddit Posts

Contributing

Join us on discord to discuss how to contribute to the project.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].