This is a fun version of the ‘freeze or die’ game, where each phone represented a player on screen. By shaking your phone, you can advance your player towards the finish line… provided you don’t ‘die’ along the way!
It is dedicated to explaining how Quarkus simplifies the process of creating such an interactive and scalable game. The extensions involved are:
- Web Bundler
- Qute
- Renarde
- Playwright for testing.
Use quarkus-reveal to run the slide-deck (located in deck.md:
quarkus-reveal
One tab:
cd dashboard;
quarkus dev
Another tab:
cd runnner;
quarkus dev
Open dashboard on http://localhost:8079/ Open multiple runners on http://localhost:8080/
Create a Kafka Cluster, then (after logging with oc
and selecting the project):
Deploy Dashboard (only one pod max):
cd dashboard
quarkus build -Dquarkus.kubernetes.deploy=true --clean
Get dashboard route:
oc get route one-two-three-quarkus-dashboard -o jsonpath='https://{.spec.host}/api/game'
Deploy Runners (scale to N):
cd ../runners
quarkus build -Dquarkus.kubernetes.deploy=true --clean -Dfrontend.api.game=DASHBOARD_API_GAME_URL