Tired of listening always to the same music?
Take a walk on the WIDE side!
-
Precision
With a vast library of songs across all genres, our app offers a personalized music experience that tailors recommendations to your unique preferences. -
Spotify link of your recommendations
We provide a direct link of the recommendations so you can listen right away to your future favorite songs -
Choose the number of recommendations
With WIDE you can choose the number of recommendations you want. You can have one track or an entire list (up to 20 songs). -
Features layout
We know that is important to understand what features you love from your music. That's why we integrate a plot to show you what are the things you love. -
Save your songs into an existing Spotify playlist
Don't lose any second and listen to your songs straight away! -
Visualize your user stats
Need a Wrap? You can now also check your User Profile Info (name, alias, picture and followers), Followed Artists (app can show you up to 1000).
UNDER DEVELOPMENT: Recently played, Top Artists, Top Tracks
WIDE can run on the song recommender jupyter notebook or on the multipage streamlit app (this last one includes new features like recommendations based on related artists and export the recommendations into a playlist).
Open a terminal and:
- Clone repository into desired folder (move to the folder and write):
git clone https://github.com/jcjv86/song-recommender.git - Move into newly created repository folder inside the previous one:
cd song-recommender - Create virtual environment:
python3 -m venv ./venv - Acivate virtual environment:
source ./venv/bin/activate - Install requirements:
pip install -r requirements.txt - If you want to run the original program from the jupyer notebook, you can find both the original and the extended (which uses the song tempo as a weight to recommend songs with similar tempo) into the /notebooks folder.
- If you want to use the app, move into app folder:
cd app - Configure program settings on app/config/config.py file.
- Run app:
streamlit Home.py
- New search option: Related artists! You can click on the names and you will be redirected to the artist profile page in Spotify.
- Added extra databases with bigger number of songs and more diverse styles (original had 5k, newest has 37k)
- Included script to fetch song ID and features that runs remotely in a Raspberry Pi via SSH (src/lib/spotify_raspberrypi_remote.py).
- Program settings on config script in src/lib/config.py file. Needed to use the app!
- Clustering now considers tempo as a weight so recommendations in the search by features page have a similar tempo.