Skip to content
Aggregates links for music streaming services given a song or album.
Branch: master
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
beatnik Fix arguments for handle_search May 11, 2019
tests Reorganize modules Feb 3, 2019
.gitignore Ignore staticfiles dir, don't ignore static dir Dec 11, 2018
LICENSE Move LICENSE and README back to root Nov 23, 2017
Procfile Remove newrelic Apr 10, 2019
README.md
manage.py Remove extension from this repo Dec 6, 2017
requirements.txt Update Whitenoise May 10, 2019
runtime.txt Upgrade python Mar 12, 2019

README.md

Beatnik

Beatnik is a service that aggregates links for music streaming services given a song or album. It is currently deployed on Heroku at https://www.beatnikapp.com/.

Supported Services

The currently supported services are listed below:

  • Apple Music
  • Google Play Music
  • Soundcloud
  • Spotify

Requirements

  • Python >= 3.5.2
  • PostgreSQL 9.6
  • Pip

Setup

Note, this setup is for developing on the project only, to use it go to https://www.beatnikapp.com

  1. Clone the repo
  2. Setup a python virtual environment
  3. Run pip install -r requirements.txt
  4. Register the app with Spotify and set the SPOTIPY_CLIENT_ID and SPOTIPY_CLIENT_SECRET environment variables according to what you got from Spotify
  5. Set the GPM_USERNAME and GPM_PASSWORD environment variables to valid Google Account details with a paid Google Play Music subscription, note that for accounts with 2fa enabled you need an app password
  6. Get API Keys from Apple for Apple Music and set the APPLE_KEY_ID, APPLE_KEY_ISSUER and APPLE_KEY environment variables
  7. Set the POSTGRES_USERNAME and POSTGRES_PASSWORD environment variables to the details of a valid PostgreSQL user
  8. Create a database in PostgreSQL called beatnik_dev and give your PostgreSQL user all permissions on this database
  9. Run migrations with python manage.py migrate
  10. Run the development server by calling python manage.py runserver
You can’t perform that action at this time.