← SELECTED WORKPROJECT / 01
Multiplayer Trading Card Game
Real-time PvP card game. Two players, one match, turn-based state kept in sync over WebSockets.
- ROLE
- Full stack
- TEAM
- 3 people
- YEAR
- 2024
- CONTEXT
- SEP module · 9 ECTS
AngularTypeScriptSpring BootRESTWebSocketsGit
01 / PROBLEM
The problem
A turn-based card game played by two people at once needs both screens to agree on what just happened. That means moving game state between two browsers in real time, without either client being able to drift from the other.
02 / CONTRIBUTION
My contribution
- Real-time PvP with WebSockets, synchronizing turn-based game state between two clients per match.
- Angular / TypeScript features, Spring Boot REST endpoints, and the game state model.
- User authentication and session handling.
03 / ARCHITECTURE
Architecture
Each player runs an Angular client. Both hold a WebSocket connection to a Spring Boot backend that owns the game state model and handles authentication and sessions.