• Stars
    star
    157
  • Rank 238,399 (Top 5 %)
  • Language
    JavaScript
  • License
    GNU General Publi...
  • Created over 5 years ago
  • Updated about 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A Spotify Connect visualizer

Logo

NowPlaying for Spotify

This is a real-time updating Spotify Connect visualizer, which has had its base codebase made in half a day.

This project is licensed under GNU GPL-3.0 license.


Available at nowplayi.ng

Try the ongoing AlpineJS rewrite at dev.nowplayi.ng!

Status page

Dedicated Discord server: nowplayi.ng/discord - tip to me: paypal.me/busybox11 (thank you!)

Changelog

v1.6.X

  • Use of localStorage
  • Added GNU GPL-3.0 license
  • Updated Index page design
  • Updated French and English sentences
  • Compatibility with Dark Reader
  • Better UI consistency / CSS tweaks
  • More languages
  • .env support (thanks @finnie2006!)
v1.5.X
- Added playback support (Premium account should be needed)
- Added playback information
- Added pause button (#17)
- CSS improvements added for better responsive (#15 #16)
- SEO improvements (#16)
- Minor CSS improvements
v1.4.X
- Advertisements are recognized
- Multiple artists are recognized
- Experimental theme switcher
v1.3.X
- Now playing device name and type is showing
- Cursor is hidden after a couple of seconds
- Fullscreen button

Regular theme Regular theme

New theme New theme

Made with

HTML, CSS, JS, PHP

Used libraries:

Spotify Web API PHP by jwilsson to obtain the token and refresh token, Spotify Web API JS by JMPerez to retrieve and display the currently playing song

Known bugs

  • Podcasts aren't recognized
  • White flash when loading new artwork

Upcoming changes

  • Rewrite (see discussion #76 about the possible use of web frameworks)
  • OBS source (In progress!)
  • Local players support (coming with localmusic-api - Sunamu by @NyaomiDEV)
  • Better config handling (e.g. automatic deployment, HELP WANTED!)
  • Themes (experimental theme / theme switcher since v1.4.3)

Feature ideas

  • Analytics panel] Chromecast integration

How to host this?

You can use XAMPP (multi-platform) or Wampserver (Windows only) but any webserver with PHP 7.0 or greater is good to use, with the php-curl module.

!!! If you are on Nginx you need to add this to your config, or else your .env will be exposed to the internet !!!

location /.env {
    allow [YourIP]; # Allow your IP if you want to, if not delete this line.
    deny all;
}

What modifications are required?

You should have a declared app in Spotify's developer dashboard to obtain a Client ID.

How to do this: As I said, the first thing is to create a Client ID (Create a Client ID button) on Spotify's developer dashboard. Type your app's name in the App or Hardware name text field, and its description on the App or Hardware description text field. In the What are you building ? section, indicate the platform which you are building the app for, then click on the NEXT button. Answer to the commercial integration question, and continue. If necessary, fill the form and check all the boxes at the 3rd stage and you're ready to go. Your app is declared in Spotify's developer dashboard!

Now that you have your app, you have some modifications to do in one file: .env. (If it doesn't exist, copy example.env to .env)

Edit those values:

  • YOUR_CLIENT_ID by your Client ID available on your app's panel,
  • YOUR_CLIENT_SECRET by your Client Secret available by clicking on the Show Client Secret button situated on the same webpage as your client ID,
  • YOUR_DOMAIN by your redirect URL, in the case of a local hosting replace it by http://localhost/token.php in most cases. Basicaly, it's the accessible URL for the token.php page.

Let's go back on our app's panel. You need to declare the URL where the token.php page is located, for a local hosting it would be in most cases http://localhost/token.php. Click on the green Edit settings button situated on the top of the page, then in the Redirect URIs text field, indicate yours. ATTENTION: what you typed should IMPERATIVELY be the same as what you wrote in the two precedent files! Then click on the SAVE button on the very bottom of the form. Your app is declared and ready to use!

Credits

Flags by Freepik of the www.flaticon.com website under Creative Commons BY 3.0 license.

Featured similar projects / forks

More Repositories

1

probote-v2

NON SUPPORTÉ - Rewrite de Probote en NodeJS
JavaScript
25
star
2

dotfiles

My Linux dotfiles
Python
22
star
3

codesearch

A browser extension that adds code snippets to search results
JavaScript
14
star
4

probote

Un bot Discord pour Pronote utilisant l'API de Litarvan
Python
12
star
5

insta-discord

Instagram integration for Discord
JavaScript
12
star
6

konami-rickroll-coconut-malled

Simple JavaScript script that uses the Konami Code to randomly Rickroll (4k60) or Coconut Mall the user
JavaScript
7
star
7

blockr

A multi-purpose content blocking extension for Chrome (WIP)
CSS
5
star
8

busybox11

My profile's README
4
star
9

localmusic-api

A Python Flask REST API to retrieve currently playing local music
Python
4
star
10

spotify-polybar

A Spotify integration for Polybar
Shell
3
star
11

angle.py

Le répositoire officiel de la classe Python dénommée "Angle"
Python
3
star
12

statnet

Real-time network stats in Python
HTML
3
star
13

web-pronote-client

Un client web Pronote alternatif
CSS
3
star
14

busybox11.github.io

My portfolio
SCSS
2
star
15

htmlclock

HTML
2
star
16

cuspot-web

Custom Spotify client for the web (WIP)
CSS
2
star
17

spotishare

Share your Spotify liked songs automatically on social networks
JavaScript
2
star
18

bigbenbellbot

Big Ben Bell Bot in your Discord server. That's it.
JavaScript
2
star
19

MyPlaying

Personal widgets and tools for now playing information
JavaScript
1
star
20

liblocalmusic

A Python library for local music
1
star
21

spotify-client-ereader

A Spotify client made for eReaders web browsers
JavaScript
1
star
22

tuneder

Discover music in an unusual way
HTML
1
star
23

Glasscordify

A thing that doesn't work so don't try to use it
JavaScript
1
star
24

soundreal-app

JavaScript
1
star
25

instagram-bot

A fully working instagram bot using Insta.js by androz2091
JavaScript
1
star
26

skift-tour

An online skiftOS tour
JavaScript
1
star
27

projet-final-nsi

Projet final de NSI de Première avec Josselin GAUTIER
CSS
1
star
28

spotify-nowplayimg

Generates an image for your now playing Spotify track
JavaScript
1
star
29

Discord-Themes

A collection of custom Discord themes
CSS
1
star
30

localchat

Local chat client / server written in Python to practice websockets
Python
1
star
31

self-nowplayimg

Self-hosted NowPlayimg Spotify server
1
star
32

wschat-gui

Experimentations with chat GUIs using @Jossl123's websocket chat server
JavaScript
1
star
33

deezpotify

Listen music together with Deezer and Spotify
JavaScript
1
star
34

the-music-rpc

A music Discord RPC using localmusic-api
Python
1
star
35

musicstatuscord

A very bad name for something that only updates your Discord status with music lyrics
JavaScript
1
star