2026-03-13 21:09:32 +02:00
2026-03-13 21:07:23 +02:00
2026-03-13 21:07:23 +02:00
2026-03-13 21:07:23 +02:00
2026-03-13 21:09:32 +02:00
2026-03-13 16:20:00 +02:00
2026-03-13 21:07:23 +02:00
2026-03-13 21:07:23 +02:00
2026-03-13 21:07:23 +02:00
2026-02-12 15:05:51 +03:00
2026-03-13 16:20:00 +02:00

Galaxy

Galaxy is a turn-based strategy game which took place in space.

At the highest level Game has a Backend service and an UI Client.

Backend service

Backend service is presented by several "microservices" with a different set of responsibilities.

  • AuthN Proxy Service: handles all incoming requests, immediately rejects not-authenticated requests and passes authenticated request to the next service.

  • AuthZ Service: checks permissions avaliable to the authenticated user and passes request to the next service if user is authorized to use specific game api.

  • Games Orchestrator Service:

    • finds appropriate Game Server according to Client's request data,
    • passes user's commands to the selected Game Server,
    • reads response and bounces it back up to request chain to the Client,
    • manages Game Server state for health monitoring and making next turn.
  • Game Servers: several instances of ongoing games with avaliable unprotected API ready to receive Player's and Administrator's commands.

UI Client

UI Client is capable of:

  • Register a new player and login for an existing player using only e-mail and one-time codes,
  • Enlist to a new Game from available onboard Games list,
  • Request list of Games in which Player participating,
  • Request, store and display particular Game data,
  • Use push-like mechanism for receiving asynchronous updates from Server,
  • Offline mode when no internet connection is available or user desired to work offline.
S
Description
No description provided
Readme 25 MiB
Languages
Go 61%
TypeScript 31.6%
Svelte 6.5%
JavaScript 0.3%
Makefile 0.3%
Other 0.3%