Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

Change The Way You Listen

PRs Welcome

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:


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:



Why do you need a personal listening report?

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.

Why not just listen Daily Mix playlists?

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.