Hacker News new | past | comments | ask | show | jobs | submit login
Show HN: Recycle your old Spotify playlists into new ones (playlistrecycle.com)
50 points by dr00bot on Nov 26, 2022 | hide | past | favorite | 19 comments
I wanted a way to quickly generate new Spotify playlists from my library based on some simple user inputs. There are probably a bunch of songs floating around in old playlists that you will never listen to again so the Spotify Playlist Recycling Plant is an attempt to resurrect these forgotten gems!

At the heart of this tool is a simple custom algorithm that uses Spotify's 5000+ unique genres to find similar artists. It works well for my purposes but everybody uses Spotify differently so I'd love some feedback :)

Built using React and the Spotify Web API.




Well done! I like your design approach: artists as seeds in a controlled genre-based expanding similarity selection. It is like a recommendation system but limited to your own music library content.

Just a simple suggestion: allow for copying the result as a text list (I'm one of those who can tolerate you reading my data but not writing in it)

Some of you may be looking for more "plain" ways of recycling your library (where you more explicitly choose the final outcome) by

- (re)organizing (by genres, popularity, date added, audio features...) -> http://organizeyourmusic.playlistmachinery.com/

- (re)combining (using a good selection of modular dataflow operators) -> http://smarterplaylists.playlistmachinery.com/

---

Bonus : https://observablehq.com/@mjbo/genre-map-explorer-for-spotif...


Thanks! I think the text output is a good option. Will add it to the backlog :).


It would be nice if it would be possible to import your "liked" songs. I don't typically put songs I like into a specific playlist.


Great idea. There's an endpoint for this so I'll add this functionality soon. Thanks!


Agreed. Often my likes list is across multiple moods and genres so playing my likes back doesn’t flow so nicely. Being able to split them up properly would be a nice feature.


I'm a big fan of this for how simple it is. How anyone that has used Spotify for years, knows how bad their random song algorithm is. Can you elaborate more on your 'simple custom algorithm'? I 'recycled' a large playlist with 650+ songs and I'm listening to songs I almost never listen to, I love it.


Thanks! Glad you've found it useful :). The algo is quite simple but a little bit hard to explain so I'll do my best...

The aim is to find similar artists to the ones you have selected based on genre (every artist on Spotify is associated with multiple genres).

1. The tool pre-calculates the number of artists from your playlists that are associated with each genre (e.g. "jazztronica: 3" indicates that there are 3 artists in your playlists in the genre jazztronica).

2. We compute a threshold called artist_thresh which is a function of the total number of artists across all your imported playlists and the "Similarity Threshold" set in the tool.

3. For each artist you select in the tool, we find all of their associated genres which have an artist count BELOW our artist_thresh.

4. For each of the genres selected in the previous step (as well as any genres manually selected in the tool), add all the associated artists to our output playlist.

5. Finally apply the "Release Years" and "Include Explicit Tracks?" filters and output the playlist.

The underlying assumption here is that rarer genres are more specific and therefore better indicators of similarity. E.g. I am more confident that two artists that share the genre "uk alternative hip hop" are similar than if they only share the genre "rap".

Hope this makes sense!


No matter what I set the similarity threshold too, its just reproducing exactly the input songs. Any tips?


That's interesting. Depending on the number of tracks/artists that you initially import it is possible that the tool won't find any similar artists.

Can I ask how many tracks and artists you are importing from your playlists and how many artists you are selecting in the parameters panel?


I was importing a few hundred tracks with many artists. But I wasn’t selecting any in the drop down menu. Perhaps make that optional to select all? That’s what I thought it would do. Thanks for the cool tool!


Really cool! Great job, OP! Can you explain a bit further what that "simple custom algorithm" does and how it works?

EDIT: A nice additional feature would be to add a filter to only show playlist that you created yourself


Thanks! I've explained the algorithm in a previous comment. If it doesn't make sense let me know.

And I like that feature idea. Will add it to the backlog!


Good job! I've had a number of spotify API side projects that never got this far. +1 for access to source ^_^


Thanks! First time using React so it might be a bit messy...

https://github.com/andrewjkuo/playlist-recycle


thanks for the source


Do you delete the tracks from your servers after the playlist is generated? :)

Thanks, this works great!


Thanks! The app is fully client-side so nothing is ever stored on my servers. I pretty much use the Spotify API as the backend.


Is the source available anywhere?


https://github.com/andrewjkuo/playlist-recycle

This was my first time using React so it might be a bit messy...




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: