Concertmaster is a classical music front-end for Spotify.
It's splitted in several projects. This one provides only the HTML/JS interface. It uses some PHP to deal with the server-side part of OAuth. All data comes from an API which, in its turn, uses the Spotify API. Spotify doesn't allow multiple apps using the same API key, so you can't fork only the player and use the Concertmaster API - you have to fork both.
It's a web app, so just open it in your browser! (It doesn't work on the iPhone because the Spotify SDK isn't compatible with it.)
The player itself is full of features, so there is a wiki explaining them all.
How to build
- Fork and clone this git repository to your webserver (for example, in the
- Fork the API repository and clone it as well
- Create an
inc.phpfile from the example:
cd /var/www/concertmaster_player/lib/ cp inc-example.php inc.php vim inc.php
- Change variable values in the
lib/inc.phpaccordingly to your webserver and Spotify API params (you can create a Spotify dev account here)
- Edit the
html/player/js/lib.jsfile and change variable values accordingly to your domains and Spotify API key params
- It's better to change the Google Analytics tag to your own account. Please check the
There are two public directories in the project and they must have their own virtual hosts on your webserver:
html/playerit's the main player. For example, we host it at concertmaster.app
html/shareit's the share page. For example, we host it at cmas.me
The main player must have SSL enabled (it's a DRM rule). You can use free Let's Encrypt-provided certificates, they're perfectly fine.
We have adopted fake
.local domains (concertmaster.local, cmas.local) for our dev webserver, but you can change the TLD in the
Please note that you still need the main player to serve with HTTPS, so you'll have to create self-signed phony SSL certificates for your dev environment.
Contributing with code
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
Contributing with data
Concertmaster composers and works information come from Open Opus, a free, wiki-style, open source database of classical music metadata. You can review existing info or add new entries to the database - any help will be appreciated!
Contributing with money
Concertmaster is free to use but it runs on web servers that cost us money. You can help us by supporting us on Patreon - any amount is more than welcome!