The Pokémon Configurator providing data to Pokestage, the Pokémon Portal.
When triggered via an HTTP endpoint Pokeon reads from a third party source of data and produces YAML files to be consumed.
npm run ncdc:serve
this will boot the mock version of the Pokémon API.
npm run dev
this will run a local dev version of the site against the mock.
Open http://localhost:3000/api/webhook
to see it run.
With the local version runing you can run npm test
to run all tests.
Or npm run test:unit
to run just unit tests.
We have 3 different tests Acceptance Tests against a mock, unit tests and CDC's.
npm run build
npm run start
This will run production mode against the Pokémon API.
First phase - For every trigger all data will be processed. Possible future - For every trigger only changes to data will be processed.
To build low cost testible software that is easy for a human to read and maintain.
I want it to be easy to change and adapt to new requirements so we can move at speed.
- Think about the new initiative.
- Think about an ubiquitus language.
- Create some basic user stories. Acceptance criteria.
- Pick the first meanful one (Steel thread).
- Write a test.
- Write some code.
- Commit.
- Question what we've done... Refactor... Move some code about.
- Commit.
- Rebase main.
- Have a cup of tea.
- Continue...
- Release!
- Monitor!
- Think about the archetecture. Perhaps some redesign.
- Pick the next most valuable story.
- Rinse and repeat if nessessary.
- As Pokestage I need a list of the Pokémon names in a .yml file.
- As Pokestage I need a .yml file for each to provide id of the Pokémon.
- As Pokestage I need a .yml file for each to provide base name of the Pokémon.
- As Pokestage I need a .yml file for each to provide base experience of the Pokémon.
- As Pokestage I need a .yml file for each to provide order of the Pokémon.
- As Pokestage I need a .yml file for each to provide weight of the Pokémon.
- As Pokestage I need a .yml file for each to provide height of the Pokémon.
- As Pokestage I need a .yml file for each to provide types of the Pokémon.