- No obvious game stages ("Login", "Choose game type", "Make a decision") from the server point of view (partially implemented on the client side).
- No UI for summary page (raw JSON with users turns is shown).
- Implemented as Web application on Scala Play + React
- UI interaction is based on periodical HTTP AJAX requests, but for production app something better sholuld be considered, WebSockets for example.
- Build and launch app
git clone https://github.com/kostafey/evolution-gaming-task.git
cd evolution-gaming-task/ui
npm install
npm run build
cd ..
sbt run
- Open 2 or more browser tabs and type
http://localhost:9000/
- Type 2 or more different logins in this tabs
- Select same game types for at least 2 different players
- Web UI added
- Support "multi-tabling" - players can play multiple games in parallel at once
- Any game can be turned into 3, 4 or more players per game by updating
USERS_PER_GAME
value.
Screenshot below shows the example.
Player "1" plays single-card-game
with Player "2" and Player "1" plays double-card-game
with Player "3" simultaneously.