
Pokémon Portfolio
My CV as a Game Boy role-playing game: explore the map, meet characters, and fight a gym leader instead of scrolling a page
6working systems, overworld to turn-based combat

The idea
Every developer portfolio is the same page. A hero, some cards, a timeline, a contact form. I wanted to find out how much of an actual game engine I could put in a browser tab, and a portfolio is a good excuse because nobody minds if it is strange.
So the CV is a world. You walk it with the arrow keys, the sections are places, the people are NPCs who talk to you, and there is a fight at the end.
What is actually in it
Six systems, none of them faked:
- A tile world with layered maps, collision, doors between areas and camera follow.
- A dialogue system for NPCs, with branching and typed-out text.
- A turn-based battle engine, kept in its own module with its own state so the combat maths is testable away from the rendering.
- An inventory and a progression system that tracks what you have found and done.
- Save and load, so closing the tab does not throw the visit away.
- Localisation through i18next, because the whole thing exists in more than one language.
The world, party, inventory and battle each keep their own state, the way a game needs, instead of treating every screen like a normal web page.
Why it is archived
It works and it is live, and it is also from a period when I was answering a different question than the one my work answers now. It is here because the engineering in it is real, and because it is the only thing on this page you can lose an afternoon to.
