Make music sharing better. https://combine.fm
Find a file
2015-11-22 12:37:09 +00:00
chrome Bump Chrome extension version for release 2015-01-12 23:12:51 +00:00
config Update for Babel 6 changes 2015-11-22 12:37:09 +00:00
lib Fix deezer 2015-10-13 15:58:13 -07:00
public Update for Babel 6 changes 2015-11-22 12:37:09 +00:00
routes Refactor more, fix and design 404 2015-08-21 18:49:38 +01:00
test Finally finished giant ES6 refactor 2015-08-20 23:25:08 +01:00
views Answer playlist FAQ. 2015-10-26 17:26:14 +00:00
.babelrc Update for Babel 6 changes 2015-11-22 12:37:09 +00:00
.dockerignore Unvendor playmusic, move to eslint 2015-05-16 22:32:51 +01:00
.eslintrc Switch to Koa, more es6 2015-06-14 18:38:57 +01:00
.gitignore Restore postinstall 2015-07-23 08:51:00 +01:00
app.js Update deps 2015-10-26 17:20:32 +00:00
Dockerfile Minor cleanup 2015-06-14 19:22:33 +01:00
LICENSE Finally finished giant ES6 refactor 2015-08-20 23:25:08 +01:00
package.json Update for Babel 6 changes 2015-11-22 12:37:09 +00:00
Procfile Finally finished giant ES6 refactor 2015-08-20 23:25:08 +01:00
README.md Update config-related docs 2015-08-20 23:31:56 +01:00

#match.audio Circle CI

Make sharing from music services better. We match links from Rdio, Spotify, Deezer, Google Music and iTunes and give you back a link with all of them.

Supported Services

  • Spotify
  • iTunes
  • Deezer
  • Google Play Music (requires GOOGLE_EMAIL and GOOGLE_PASSWORD)
  • Rdio (requires RDIO_CLIENT_ID and RDIO_CLIENT_SECRET)
  • Xbox Music (requires XBOX_CLIENT_ID and XBOX_CLIENT_SECRET)
  • Youtube (requires YOUTUBE_KEY)

Google doesn't provide a public API for Play Music, hence this GOOGLE_PASSWORD awfulness. The account also needs to be a Google Play Music All Access subscriber and to have played at least one track on a mobile device. Yeah.

It doesn't parse Youtube urls yet, only finds matches on Youtube. The metadata we get from Youtube around music videos is poor and will require more work than the others.

Support for Amazon Music is in a branch but the library I used is poor and needs either rewriting or replacing to support Amazon urls and not just finding matches on Amazon.

If you don't provide credentials, it will simply disable support for that service. Spotify, Deezer and iTunes don't need any auth. The test suite will fail if you don't provide credentials for all services, but individual tests will pass otherwise.

Getting Started

Install node and mongodb if you don't already have them. Then npm install and run the app with npm start or tests with npm test.

Contributing

Bug reports and feature requests welcome. If you want to contribute code, that is awesome but please issue pull requests early for discussion.

So there's no surprises for contributors later, I plan on using referral tags wherever it makes sense. Right now that would apply to outgoing links for Amazon, iTunes, Rdio and Spotify. The referral tags themselves will not be baked into the code, just support for using them.

Licence

The code is MIT licenced, the brand is not. This applies to the logo, name and magenta colour scheme. I'll probably pull the branding out of the app itself at some point to make that distinction more clear.