The Best Albums in the Universe
I think I started this project in 2011 or 2012. It lives on the web at bestalbumsintheuniverse.com and on Gemini at gem.bestalbumsintheuniverse.com.
When I was coming up with the name, I knew I wanted to keep track of a curated collection of my favorite albums, mostly for my own reference. But I thought it would be lame to be like my-favorite-albums.com or something like that. Why not go big and call it Best Albums in the Universe?
The best albums list is meant to be a living document, just like this garden. It is intended to grow as I discover, or sometimes more accurately remember, more albums. So far the only criteria I've set for myself is that I don't want to list multiple albums by the same artist, or else there would be many more Beatles, Radiohead and Weezer albums on there.
History
The site was originally on Tumblr. Hold on, let me check if the original Tumblr site is still up or if I can find it....
...nope, can't find it. I think I might have deleted it at some point. My personal tumblr, which just has a couple of links, refers to the new website.
Anyways, originally it was going to be a collaboration between me and my wife, Abby. She actually picked the second album and wrote the description, which is why it talks about it being her namesake. That didn't last very long though. In fact, I've had the site for over a decade and there are only 39 albums on there currently. So clearly I have not updated the site very often. If you go to the Gemini version, it actually lists the date at which I posted an album, which is kind of embarassing.
Eventually, I changed it to a Jekyll site, around the time that static site generators became all the rage. There was a time when Github let you use Jekyll to deploy a static site for free inside of a Github repository, and if you look in the history of this repo you can see that it was used there (you could -- and likely still can -- point a custom URL to Github's static sites).
When I moved from Tumblr to the Jekyll site, I already had a fair number of albums posted, with a lot of metadata. So I wanted to preserve this data somehow, hopefully programmatically. The scripts I wrote to take care of that are still part of the Jekyll repo linked above.
The interesting thing about that early version was that I wrote all of the album descriptions in Markdown files, as you do with Jekyll sites, but there was a lot of "front matter" in the Markdown that was used to annotate each entry, like the photo_sm
and photo_lg
links to the thumbnail and full versions of the album art. I would find the album art on Amazon, and upload them to imgur.com where I would "hotlink" to them from my site. In fact, I used a little known feature of imgur, which was that you could take the image url, say http://i.imgur.com/abcdefg.png
and append a character to the ID like abcdefgs.png
(s for "small") or abcdefgl.png
(l for "large").
Also, the markdown files didn't directly translate into the "cover art squares" you see on the website. Instead, I had an albums.json
file in my root directory that contained a Liquid template for generating a full JSON document of the final albums. Then, when the site loaded, the Javascript on the page would request the albums.json
file, parse it, and use Mustache templates to generate the final HTML document. There's also a "grid layout library" called Masonry that is used, plus some custom Javascript to control when to display or collapse albums when they are clicked, and to create permalinks to a version of the site with certain albums already open.
There's more to this history of this site and how it is generated, including the Gemini version and the current "headless CMS" version, so be sure to check back here.
Comments
With an account on the Fediverse or Mastodon, you can respond to this post. Simply visit the post on its original server and leave your comment. It and other known non-private replies will be displayed below. Learn how this is implemented here and here.