Unfortunately, I have to discontinue this project due to Changes in Spotify's APIs
The last working status of the code included fully functional backend services. An example playlist can be found on my Spotify account
The main service (create playlist), worked as follows:
- Authenticate user
- Collect artists in genre from MusicBrainz database
- Search for and validate artist on lastfm
- Get artist top tracks on spotify
- Validate track and artist once more
- Add to playlist
- If playlist is undersized after some time, use spotify recommendations <deprecated> & custom logic to extend playlist
- Add a cover image, and return the URL
(So, as you can see, I was already jumping through hoops to get this thing working. I'm proud of how far it has come from just an idea)
Services:
- Get top genres
- Add more songs with Custom AI Recommendations
- Create playlist (adjust genre, year made, language, artist 'niche level', min and max song length
- Access playlists
- Filter generated playlists by all parameters, get average artist follower count for all or one generated playlist
Fully functional database creation, seeding, and maintenence scripts were also written.
My plan was to create a React/TypeScript frontend, and get this thing hosted on GCP for people to enjoy for free. What a shame.
Thank you for reading. Let's encourage healthy competition in all industries to facilitate broader access to high quality options, especially for building cool stuff like this!
Piero