What was supposed to be a simple exercise in updating old GitHub projects has become a week-long endeavor involving experimentation with Netlify Blobs, an attempt to understand the differences between blobs and files, and learning how to convert between them, as well as exploring Next.js.
It’s been a while since I’ve done some programming for fun since I landed my first software engineering role. But now that I’m lightly exploring new roles again, I decided to update some of my previous projects based on my new learnings.
Projects I’ll be updating
Whenever I experiment with new programming tools, I usually make something based on Animal Crossing (mostly New Horizons) because it’s one of my favorite games.
Here are the repos I’m planning to update:
ACNH BGM IRL: Uses the viewer’s location and time to get the weather (via Weather API) to display a related image (via Unsplash API) and start playing the related ACNH background music.
ACNH Quotes: My first foray into backend development in JavaScript with Node.js, Express, and MongoDB using Pascal’s quotes.
K.K. Radio: A simple music player on the web based on K.K. Rider’s songs.
Animalese Ipsum: A “Lorem ipsum” generator using the villagers’ initial catchphrases.
But most of them rely on the ACNH API created by Alexis Lours on GitHub, which has since been taken down, so all my projects are now broken.
Thankfully, the repo with all the information is still up. So after cloning it, I’ve been thinking about different ways to make the data usable again.
Option 1 was just accessing everything from GitHub. The data is stored in different .json files, which are easily readable. The images can be accessed via the raw.githubusercontent link, such as the one below for the Bubblegum album cover art.

But this doesn’t work well for the audio files.
Another option was to just keep the files locally in the project and access them from there. In hindsight, it would’ve been much easier to copy and paste the files into a folder. The assets are static, and I wouldn’t expect to have to update new audio or images, since Nintendo announced the last free major update would be November 5, 2021.
Since the project was already deployed on Netlify, I did some research on what would already be available to me, including their Database and Blobs.
The database sounded nice, but it seemed a little overpowered for my simple (spoiler: very much not simple at this point) project. It did pose as a new opportunity to learn more about Postgres, since most of my experience with databases has been MongoDB.
But what really sold me on Blobs was this line:
Netlify Blobs is a highly-available data store optimized for frequent reads and infrequent writes.
Just as I’d mentioned before, the assets are assumed to be static, so there would be infrequent updates, but frequent consumption as I rebuild my old ACNH-related projects.
In the next part, I’ll walk through my experience with Netlify Blobs and give a sneak peek at accessing images and audio via ACNH API 2.0.
Until next time, thanks for reading!
💖 Geraldine
I'm currently looking for a new role as a frontend engineer or fullstack engineer*. Check out my resume and get in touch!

Comments
Nothing yet. Say the first thing.
Sign in to join the conversation.