For those who don't know ...
I have been (and still am) an avid player of Magic: The Gathering since 1995 when Ice Age was released. There was a solid near-decade-long hiatus starting in the 2010s when making money in my software dev career obviously took higher priority than turning cardboard sideways, but soon went back on the cardboard crack train when this hiatus ended.
Over time, my MTG card and deck collection has obviously grown to levels that mental cataloguing/inventory of the collection in my brain no longer cuts it. I need to know where every playable card is at any given time so that when I build a deck, I can easily know if I have a given card for a given quantity, and not waste $$$ buying singles from my LGS or online when I actually have the cards in question.
Obviously this means looking for a tool for card collection management and tracking, but most of the solutions are for smart phones or are websites. I want to track my collection locally from my desktop computer, not from my phone or some third party website.
So as a software developer by trade, the solution was obvious: Build my own MTG collection tracker!
Since this need for a collection tracker came around the time I had concluded my Avalonia test run, this was also the perfect project to fully dive in to building an actual multi-platform .net GUI application using Avalonia.
So after 2 years of development and strong internal dogfooding tracking a personal collection of over 10000 cards, I am ready to reveal this project to the public.
Introducing ... the MTG collection tracker (totally original name! Yes, I know)
This is a .net multi-platform desktop application using Avalonia. On Linux, which is now my daily driver OS after the forced migration from the (end-of-life) Windows 10, it is shipped as an AppImage, making the app an easy single file you can double-click to run.
Collection data is stored in a SQLite database via EFCore. It uses the Scryfall API for card data/images and downloads price data on-demand from MTGJSON, which lets us do things like tracking price history for every card.
Wishlist management, so you know what cards you are intending to buy or trade for.
My most used feature: An easy way to find out if you can build a given deck based on your current tracked collection, with a button to easily add the cards you don't have to your wishlist.
General note taking capabilities
And finally, the end result of early DeepSeek evaluation after the GitHub Copilot rugpull: A crude, but functional play-testing surface for any deck in your collection!

Project on GitHub







No comments:
Post a Comment