Project Diary: Marvel Puzzle Quest Champion Tracker, Part One

February 6th, 2019

Completed Work: Since my initial diary entry on this project, I created a React project for this app, and populated it with the initial data on the relevant game characters. This type of data entry is long and cumbersome, and best dealt with early on so one can get to more interesting problems. In addition, I wrote a few helper methods to determine whether a particular character is champed, and in how many levels they are getting their next cover rewards. I also began some minor front-end styling and structure, though I will be holding off on most of this until more of the back-end is squared away.

Next Steps: After considering it for a while, application flow will look something like this:

  • User signs into application. Only after signing in can they create/edit a roster.
  • The initial character roster is represented programatically by arrays of objects (think hash tables or dictionaries if you're unfamiliar with JavaScript) for each rarity level.
  • Personal rosters will be created by editing that initial roster, and pushing any characters with 1 or more covered powers to corresponding arrays set aside for the purpose of showing a snapshot of their current roster.
  • This convention will also be used to keep the UI clean via conditional rendering. Only rarity levels that a user has characters in will be shown in the app.


  • Will merely saving the data allow it to persist between sessions for users? I don't think I have a great answer to that question, so I will set up an mLab database to experiment with.