DeepDJ is a music playlist creator based on a text promt. This web app was created during the two final project weeks at the Le Wagon bootcamp in Berlin (April-June 2022).
Most music apps create playlists that are based on the music that you already listen to. Recommendations tend to be tracks that you already know or that are very similar, and may lead to a very monotonous listening experience.
DeepDJ is an app that allows you to enter a text prompt of any length (a description, a thought, a wish, a story, a poem...) and provides the best matches based on song lyrics. This is achieved by preprocessing and vectoryzing a large dataset of song lyrics (Music Dataset : 1950 to 2019 from Kaggle) and calculating the cosine distance between the vectorized prompt and the dataset of songs.
To run this app locally:
- Create a deepdj directory and clone the repository
git clone https://github.com/emma-carballal/deepdj.git
- Set up a deepdj virtual environment
pyenv virtualenv deepdj
- Go to the project directory and set it to use the deepdj virtual environment
cd deepdj
pyenv run deepdj
- Install the projects requirements
make install_requirements
- Run the api
make run_api
- Run the Streamlit app locally
make streamlit
Web app deployed on Heroku: https://deepdj.herokuapp.com/
- Gabriela Pimenta dos Reis (data sourcing and cleaning)
- Hatice Peucker (Streamlit interface)
- Julia Strahl (API)
- Emma Carballal Haire (pitch) (deployment on Heroku and Google Cloud Platform)
DeepDJ is released under the MIT License. See LICENSE file for details.