ABRPT: Shuffle Playback by Album
TL;DR: I made a thing! You can shuffle your Spotify Saved Albums here.
Code here.
I have a relatively ecclectic library of music. In the above screenshot is an English electronic band, a French disco artist, and two American bands: one rock, and one bluegrass.
With a library like this, it can be downright jarring to shuffle everything.
Each music app has its own way of dealing with this problem, but none do so completely. Playlists? Terrible if a song fits more than one mood or genre or whatever. Tagging? Way too manual and finicky. Recommendations? Too biased and will eventually converge on one style of music.
I've dealt with each long enough to know how to get them to work, but I had really hoped there was a better way. After more than a decade of these sorts of jagged, jarring, manual, and often lackluster listening experiences, I had an idea: what if I could shuffle my library by album, rather than by song?
I know this isn't a novel idea. I have two of those oldschool, drum-based CD changers, each of which supports this exact feature. That said it's always felt like an ancillary feature, and hard to control. What if I could see a queue of those CDs, filter out CDs that I don't feel like today, etc.?
I have plenty of issues with Spotify. They don't pay their artists enough. It's a terrible solution for long-term library "storage", as they're constantly breaking whether a song or album is Saved to your collection. Their library of music is incomplete in selective ways. Their recommendations are White-centered.
That said they're the best option to try out this idea, and this was an opportunity to try Glitch.
Starting with the latter, I would use Glitch again for this sort of one-off, temporary-by-default project. I don't expect to run anything on Glitch long-term (though I know they support that), but it's fantastic for quickly standing up an experiment. The biggest frustration was using JavaScript and Node again, which I would prefer to continue avoiding in the future.
But using Spotify for this worked great! If you go to the ABRPT app, you can (after Glitch warms up the app) log in with Spotify and see a preview of what random 8 albums ABRPT wants to queue up. Clicking Apply appends those albums (song-by-song due to a limitation of the Spotify API) to the end of your Play Queue.
If you don't have an active Spotify device, this may fail; start Spotify playback on the device you want, and try again.
If you want to check out the code, it's all available here on Glitch. Check it out, and let me know what you think!
2nd of March, 2021