PokéProject Dev Diary: Day Three

Changing the theme a bit, today has all been about data, APIs and data transformation.

“Being as LEAN and AGILE as possible can be interpreted as being as-lazy-as-possible about your solutions for as-long-as they work, and that’s certainly the case so far with PokéProject.”

But now it’s become apparent that the original “Google it, ctrl+c, ctrl+v” data solution is no longer fit for purpose, so I’ve gone back to the drawing board to create a Node.js-based data collector, which harvests data from endpoints like PokeAPI and transforms it into a streamlined data set, one that’s both more complete and more tailored to the task at hand.

The end result of this means a fair amount of changes under the hood to support this new data structure, but it does make it easier to control and expand — I’ve also increased the original set of Generation 1 Pokémon to also include the 100 extra from Generation 2 — bringing the total number up to 251 Pokémon (which is all of those that I remember from my childhood.)

Retrospective

Having more control over the data in our application is an important because it means we can tweak the structure to suit our needs. For the moment we’ve not got a reason to adjust things in any major sense, but being able to do so should serve us well in the future. The main driving force for this data work so far has been to plug the gaps in the data and avoid having to do additional error-handling work.

Next Steps

Having PokéProject online for a day or so now has spawned some feedback — such as a desire for saveable outputs and feedback on the UI, so our next steps are going to involve incorporating some of that feedback.


PokéProject is now online @ https://www.pokeproject.co.uk/