01 A playable dungeon
The group builds a playable top-down pixel dungeon instead of working through a list of language features.
The project keeps every new type connected to something visible: a player action, a game object, a level rule, or a transition that can be tested immediately in the browser.
02 Types as game feedback
Game states, level data, objects, and transitions introduce unions, interfaces, modules, and strict mode.
Each concept answers an uncertainty visible in the game and can be checked immediately in the editor and browser.
03 What the group practices
- Inference and explicit annotations: when each helps.
- Object shapes, interfaces, unions, and narrowing.
- Strict null and array access as design feedback.
- Clear module boundaries in a small Phaser project.
- Reading library declarations and making a change with confidence.