A playlist that’s never out of date

How we put RapCaviar on autopilot

bryant
bryant
Jun 28, 2019 · 3 min read
Image for post
Image for post

Genre Daily is a daily feed of the latest releases in each genre, playable on Spotify. It updates automatically every day and the cover art changes when new tracks are added.

I need a fresh rap song every few hours to help me forget my problems, which is why I built Genre Daily with my friend Tofe. RapCaviar isn’t great for this because it’s a radio station that plays whatever’s ‘in’. I wanted a feed with the latest, and I wanted it to update by itself.

How it works

Every day, our app goes through Spotify’s New Releases page and adds each song to the appropriate feed, which we surface as a playlist. If the release is an album, we pick the most popular song; if that’s changed since yesterday, we swap it out.

“Am I the only one who really care about cover art?”

— Miles Parks McCollum, future U.S. poet laureate

We then generate fresh cover art for each playlist, featuring the biggest artist among the new releases. The challenge was to make this happen automatically, but still look good.

Spotify’s playlist covers look good because there’s manual labor involved. For the artist cutouts on RapCaviar, someone has to handpick an image, remove the background, and arrange it on the canvas. Even if the last two steps are automated, a human still needs to check the results.

Image for post
Image for post

I wanted something that could run by itself. So instead of designing new covers every day, I created a template where we could just swap out the artist’s name and profile picture. Our app chooses the light or dark version based on the picture’s brightness, and it usually comes out pretty well.

Image for post
Image for post

Limitations

When we’re trying to determine a song’s genre, the only thing we look at is Spotify’s genre information. This works most of the time, but it’s not perfect.

Spotify only tells you the genres of artists, not songs or albums. So if a rapper comes out with a country song, we’d mistakenly think it’s rap (much like Billboard). And if an artist like Drake makes music in multiple genres, we don’t know which songs belong to which.

Spotify’s genre information is unreliable. For example, here’s The Weeknd:

Image for post
Image for post

Nobody under 30 would mistake The Weeknd for a rapper, so we can’t put someone on Rap Daily just because they have a ‘rap’ or ‘hip hop’ tag. We had to look at how many, and what percentage they made up.

Some genres are too broad. We tried making feeds for genres like rock and country, but they were all over the place. And not in a broaden-your-horizons kind of way…more like, “Who is this even for?”


We were able to work around the constraints and build something that’s genuinely useful — for me, at least. If you’re into music as much as I am, give Genre Daily a try and let us know what you think!

💌 Bryant Peng's Newsletter 💌Get an email when I release a new project or update!

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch

Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore

Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store