Change The Way You Listen helps you create playlists based on your top listened artists in the last month using certain tracks properties such as danceability, energy, tempo and so on. It also shows you your own personal listening analysis based on the top artists that you had listened in the past 6 months.
This project supports Python 3.7+. Follow the steps provided below, to setup and run this repository locally.
Step 1: Generate Spotify Client ID & Secret Key
After creating the credentials to use Spotify API, provide the Client ID & Secret inside web-app/config.ini
under [DEV]
section.
Step 2: Install dependencies
To run this repo, simply create a pip environment and install requirements:
python3 -m venv env
source env/bin/activate
pip install -r requirements.txt
In order to run the web app locally, provide the following command:
python3 app.py
This will start a Flask web application in debug mode that runs on port 5000
by default. Navigate to the following address on your browser to try it out:
http://localhost:5000/
Listening music is fun, but listening "content-aware" music is much more fun. Life is too short to try to search for the genre of each artist you had been listening. Using you personal listening analysis, you can explore which genres are associated with the sounds that you had been listening the most during a specific time period. This will help you explore more specific categories of the sounds when people ask you your favorite type of music. Because simply saying rock, pop or rap may not be describing your favorites in-depth. Here yoou can find a variety of ways to describe these sounds.
Daily Mix playlists are great but they do not allow you to use the features of tracks. When you like an artist, you do not necessarily like all the songs that they do. Maybe you do not like the "danceable" songs of that artist because you have found their new release to be not reflecting them pretty well. Using the playlist creation feature, you can decide which types of songs you want to listen in that genre corresponding to the artist you like.