Client
The client is where the actual game is played. It acts based on the servers game state. Vue.js is used as the frontend framework to create a responsive user interface. Everything related to the levels is handled by Phaser.
Folder Structure
text
.
├── public - static files such as game assets and fonts
├── src
│ ├── @types - custom types
│ ├── assets - internal assets
│ ├── components - vue ui components (e.g. buttons, text)
│ ├── levelBridge - bridge between vue and phaser
│ ├── level - everything related to phaser levels
│ ├── managers - managers for the game
│ ├── stores - vue stores
│ ├── util - utility functions
│ └── views - vue views
├── tests - test helper functions
└── vite - vite configuration