May - June 2024 | COMP_SCI 310-0 Scalable Software Architectures

SongSpot was my final project for my Scalable Software Architectures class. Working in a team of 3, our goal was to utilize AWS and the SpotifyAPI to create a responsive music analyzer and recommendations generator. View the Github repository here.

#python | #flask | #aws | #team

SongSpot

← back to my work

Features

SongSpot completes 6 functions:

  • Prints out the user's top 10 artists.

  • Prints out the user's top 10 tracks.

  • Analyzes the genres of the user's music taste and prints out a list of their top genres.

  • Computes the popularity of the user's music taste and prints out a popularity score.

  • Generates a user-given number of recommendations.

  • Prints out all songs recommended during the session, and optionally makes them a playlist in the user's Spotify account.

The program runs on a Flask application deployed to an EC2 server. The UI consists of simple print statements on the Flask client-side, and every function utilizes and interacts with the Spotify API and database. In function 5, recommended songs are stored in a database and referenced so that no songs are recommended more than once in a given session. In function 6, all the songs recommended during the session are retrieved and printed out. The user can then choose to have SongSpot create a playlist in their account with these songs.

Additional media