tCHu — Ticket to Ride Online

Java + JavaFX online multiplayer Ticket to Ride with sockets, observer-pattern UI updates, immutable game state, and a spectator extension.

Java · JavaFX · multiplayer

Online Ticket to Ride clone in Java + JavaFX. Game state is immutable, so every move is just (old state, action) → new state. That makes network sync clean: the server and clients all run the same pure function. JavaFX views subscribe to the state via the observer pattern and re-render when it changes. The network layer uses a small custom serialization format over TCP to keep per-turn messages light. Personal extension: a spectator mode for read-only viewing of an active game.

CS-108 Object-Oriented Programming at EPFL.