M.A.R.S is a user friendly music recommendation system.
It provides you with music to suit your taste using its unique algorithm. You can also fine tune your music through different modes.
- Web Technologies
- Framework
- Django
- Hosting
- Pythonanywhere
- Others
- CSS3
- Bootstrap
- jquery
- full page scroll (js library)
- Framework
- Recommendation Algorithm based on cosine simillarity
- Supporting backend on python
- Spotify API
- Python libraries
- Scipy
- Scikit-learn
- pandas
- numpy
- pafy
- spotipy
- The song name is passed in the recommendation algorithm
- Apt recommendations for all the different modes (check the website for this feature) are passed by the algorithm from the 132,000+ songs dataset.
- Metadata about the song is taken from the spotify API and saved in the dataset for future recommendations.
- The song is then passed to pafy(see requirements.pip), which generates a playable link for the song. This link is then passed to the webapp, which plays the song along with the next 2 recommendations.
├── src
│ ├── assets ( contains css, js, fonts and images which are used in website)
│ ├── mars_app
│ ├── templates ( contains html templates used in django)
│ ├── wd ( contains backend code, recommendation engine and dataset)
│ ├── migrations
│ ├── admin.py
│ ├── apps.py
│ ├── models.py
│ ├── tests.py
│ ├── urls.py
│ ├── views.py
│ ├── src
│ ├── etc
│ ├── asgi.py
│ ├── settings.py
│ ├── urls.py
│ ├── wsgi.py
│ ├── manage.py
│ ├── db.sqlite3
│ └── requirements.pip
├── README.md
└── .gitignore
- MFCC based model
- Collaborative-filtering based
- Content Based
Install the requirements
pip3 install requirements.pip
Move to the src directory and run the following code
python3 manage.py runserver
This will run the webapp on your localhost 127.0.0.1:8000
- set DEBUG=True in settings.py file
- copy the assests folder in mars_app folder and rename it as static
Star the repo and start contributing :)