Back to portfolio

Personal project · Technical experiment

Concurrency in a web game.

Movement, pursuit and timing in Web Workers; rendering and collisions in Phaser.

JavaScript concurrency · Keyboard demo

Desktop demo: keyboard required.

Technical outline
01Main thread02Workers03postMessage
Phaser + JavaScript

The problem

Separate game tasks from the thread that draws the interface.

My contribution

I started with a Phaser/React template and implemented game logic and Web Worker communication. I did not build the engine or the entire template.

Technical decisions

  • Workers for movement, pursuit and timing.
  • State exchange through postMessage; Phaser handles rendering and collisions.
  • Local PvP and Zombie modes. The demo uses WASD and arrow keys: a keyboard is recommended.

Scope and limitations

A concurrency experiment built on a Phaser/React template. Interaction is designed for a computer with a keyboard; touch controls are not included.

Next projectHandbook