项目作者: vivsnguyen

项目描述 :
Create a playlist of setlist songs from a user's chosen artist. (Setlist.fm API, Spotify API, Spotify Web Playback SDK)
高级语言: Python
项目地址: git://github.com/vivsnguyen/playlistify.git
创建时间: 2020-02-11T00:26:01Z
项目社区:https://github.com/vivsnguyen/playlistify

开源协议:

下载


" class="reference-link">Playlistify

Playlistify creates playlists from your favorite artists’ setlists and top songs.

Deployment

Try it out here: http://playlist-ify.herokuapp.com/

Currently deployed using Heroku.

Previously deployed using AWS and Amazon LightSail.

Contents

Technologies" class="reference-link">Technologies

  • Python
  • Flask
  • Werkzeug
  • PostgreSQL
  • SQLAlchemy
  • HTML
  • Jinja
  • CSS
  • Bootstrap
  • JavaScript
  • jQuery
  • AJAX
  • Setlist.FM API
  • Spotify Web API
  • Spotify Web Playback SDK

Features" class="reference-link">Features

Connect to Spotify

Users first connect their Spotify account. Playlistify uses the “Refreshable app authorization” flow, so users only need to connect once per session.

alt text

User Login

Users then can log in to their Playlistify account. Passwords are hashed using Werkzeug.

alt text

User Dashboard

Users can create new playlists, add to existing playlists, listen to existing playlists in browser, or add playlists to their Spotify account.

Create a Playlist

Users create a new playlist by providing a title and an artist name. The artist’s setlist data is pulled from Setlist.FM to create the playlist.

alt text

Add to existing playlist

Users can add to an existing playlist by providing the playlist name and the artist they want to add.

alt text

Play playlist

Users can play, pause, and navigate tracks on their playlists in the browser. The web player functionality is built using the Spotify Web Playback SDK.

alt text

Add playlist to Spotify

Users can add their playlists to Spotify.

alt text

Future Features" class="reference-link">Future Features

  • Display currently playing song
  • Autocomplete add to existing playlist
  • Autocomplete artist search

Installation" class="reference-link">Installation

To run Playlistify on your own machine:

Clone or fork this repo:

  1. https://github.com/vivsnguyen/playlistify.git

Create and activate a virtual environment inside your Playlistify directory:

  1. virtualenv env
  2. source env/bin/activate

Install the dependencies:

  1. pip install -r requirements.txt

Sign up to use the Spotify API and Setlist.FM API

Save your API keys in a file called secrets.sh using this format:

  1. export SETLIST_FM_API_KEY=YOUR_KEY_HERE
  2. export SPOTIPY_CLIENT_ID=YOUR_KEY_HERE
  3. export SPOTIPY_CLIENT_SECRET=YOUR_KEY_HERE

Source your keys from your secrets.sh file into your virtual environment:

  1. source secrets.sh

Set up the database:

  1. createdb playlist-creator
  2. python3 model.py

Run the app:

  1. python3.6 server.py

You can now navigate to ‘localhost:5000/‘ to access Playlistify.