# Architecture of Towercrush ## Purpose Being a single-choice question style minigame that lets users choose one correct answer from a bunch of wrong answers while competing with fellow players. ## Table of Contents * [Links](#links) * [General code structure](#general-code-structure) * [Starting the service](#starting-the-service) * [What to look at](#what-to-look-at) * [What to ignore](#what-to-ignore) * [Known Design Flaws](#known-design-flaws) * [Known Bugs](#known-bugs) * [Tests](#tests) ## Links - The [user docs](../../../user-manuals/minigames/towercrush.md) explain how to play the game. - The program code is available [here](https://github.com/Gamify-IT/towercrush). - The overview of the whole platform can be found [here](../general-architecture.md). - The backend architecture is described [here](../towercrush-backend/README.md). ## General code structure All code is located in the `src` folder - `__mocks__`: Mocking behavior for testing - `assets`: Static assets like the logo - `components`: Re-usable Vue components - `router`: Frontend site page routing - `ts`: Data models and backend communication - `views`: The displayed pages. Currently consists of only the GameView that contains the whole game ## Starting the service See the [README](https://github.com/Gamify-IT/towercrush#readme). ## What to look at _Everything_ ## What to ignore _NA_ ## Known Design Flaws - Exactly one answer must be correct, not more or less - Exactly two teams can play a game, not more or less ## Known Bugs An up-to-date list of open bugs can be found at by searching for Towercrush. ## Tests In general, the following things are tested for Towercrush: - everything manually with a testplan - Unit tests for Sonarqube funtionality