software · released
Album for Today
One album a day for everyone, from the KEXP listeners' Top 666 Albums of All Time
May 22, 2026
Album for Today shows one album a day, the same one for everyone.
Today’s album
KEXP listeners voted on their Top 666 Albums of All Time. That’s a great list and way too long to get through without some structure. So Album for Today picks one of them every day, and everybody in the world gets the same one. The day flips at your local midnight.

I built it mostly for myself. KEXP is one of my main ways of discovering new music. I knew about that list, knew I hadn’t listened to a lot of the albums on it and was looking for a way to work through all of them methodically.
How it works
You open the page and there’s the album: cover, artist, title and year. Under it are links to Spotify, YouTube Music and Apple Music, so you can start listening wherever you already do. There’s no embedded player, just a link that opens a search for that album.
Once you’ve listened, mark it. If you really liked it, mark it as loved too (loving an album marks it as listened automatically). Every day shows how many people listened and how many loved it.
Missed a few days? The past view is a grid of every day since launch. Albums you haven’t listened to are dimmed, the ones you loved glow. Click any day to open that album.
Same album for everyone
There’s no server deciding what to play today. The 666 albums were shuffled once with a fixed seed, so the order is always the same. The app counts the days since launch and uses that number as a position in the shuffled list. Same day, same album, for everyone. After 666 days it starts over.
Building it
It’s a React app built with Vite and hosted on Vercel. The album data is prepared once, ahead of time: one script grabs cover art from Last.fm and another gets the original release years from MusicBrainz. Everything ends up in one JSON file that ships with the app, so it doesn’t call any of those services while you use it.
The only thing stored on a server is the vote count. It lives in Supabase, saved by day number instead of date so time zones don’t mix up whose “today” a vote belongs to. Your own listened and loved marks stay in your browser.
There’s also a small public API, if you want today’s album somewhere else:
GET https://albumfortoday.com/api/today. No key needed. It returns the day,
rank, artist, album, year, cover and the listened and loved counts.