One of the cool things about the career that I’ve had is that I’ve worked with some really great product and solutions minded people. This has had an amazing benefit in crafting how I think about and approach solutions to my problems. I recently ran into an issue where I was trying to find out if I had already purchased a video game or not and I couldn’t remember if or where I had bought it. I could have easily just gone to the couple of places that I buy my games from, taken a peek at my libraries, and identified if/where I had bought it. I could have even gone low tech by exporting this information to a spreadsheet and added a little bit of metadata and also solved the problem. I thought to myself, “Self… you’re a software engineer. You solve hard problems every day for your job. If this is a problem for you, this is also probably a problem for someone else.” Yeah, good idea self. Let’s build a full on web application that can do this for us!

So then I thought, what should this actually be? Like any good product oriented engineer I of course came up with a product scope a million miles long. Something that would probably take me months to build, even longer to test, and with a miniscule probability of me ever actually releasing it. But it still gave me an idea of all of the immediate things I could think of and so I stashed that document off to the side and asked myself, what could I build in about a month? So I went back to the list and started refining it down to what would start solving my specific problem.
The MVP Scope
- Direct integrations with game providers eg: Steam and GOG to start, but ideally expandable to others
- Single page application that could scale to an iOS application in the future
- Dashboard for viewing my libraries
- Sync functionality to keep things up to date, one way is fine, it’d be cool to two way this though
- Direct integration with the fedi for authentication
Immediately, I realized that the fedi integration was not necessary for my MVP scope, but instead of cutting it, I decided to expand the scope to not only include ActivityPub, but also the ATProtocol for Bluesky. I also said, why stop at libraries, why not get wishlists involved as well. So I did, and I expanded the scope to include those. And then I went and built that.
I present to you… Mount Backlog

What’s Working
- Fedi and Bluesky authentication as well as posting from the app to your account
- Integration with Steam to grab libraries
- Integration with GOG to grab libraries
- Browsing games that have been synchronized via integrations
- Viewing game details including playtime estimates
- Browsing Base Camp which is your home for quick viewing your stats, libraries, and wishlists
- Viewing full libraries or wishlists combined from your connected sources
- Importing wishlist data from CSV
What’s Not Working
- Wishlist importing / syncing - I’m still working through the APIs on this
- Direct posting to ActivityPub / ATProtocol - I’m still thinking through how I want this to work, but it’d be cool if it posted stuff from
@your-user-here@mountbacklog.com - Syncing updates - I’ve written the code for this, but I haven’t tested it thoroughly
What’s Next?
Well, first and foremost, I have a lot of polish that needs to be done. This flow has been tested one time for each of my integrations, but I haven’t put any sort of real edge cases against this. It’s also hard to truly simulate multiple Steam or GOG accounts so who knows what happens when someone else hooks their stuff up. I also have written this after work / weekends about as quickly as one can possibly pull together a web app so I really need to put my security eyes in and make sure I’m not doing anything stupid like exposing tokens, passwords, etc… We’re still quite far from me actually launching this out to the world but I plan on launching it this year sometime and have set myself that deadline because otherwise I’ll just keep nit picking things to death. Once I get things into a workable state, I’ll likely open it up to a small group of people who are interested in helping me with a closed beta. I’ll definitely put out a broader call as that phase gets closer.
My focus is going to be keeping this as close to this scope as possible and not introducing additional scope creep to try and attain that “this year” goal. I already have a laundry list of additional things that I want to see added to this like other integrations, bi-directional sync opportunities, maybe open sourcing it one day, automatic state of game detection, play summaries, etc… That being said, I’m very open to hearing what you think would make this something you would like to use. Hit me up on Mastdon at @therealahall@gamerstavern.online and let me know what you think. I’ll add them to my future things to build list!
Show Me the App Already!
Ok ok, enough yakking. You want to see what it looks like right? Well, here you go, here’s various screenshots from throughout the application
Browsing Games

Viewing Individual Games

Base Camp

Combined Library View

Combined Wishlist View

Profile View
