architecture

% Architecture Sketch

Reviewed 2021-03-03 by japhb

NOTE: SPOT and Queryable are NYI (Not Yet Implemented). At this time server components can still directly talk to Storage drivers.

UI ā†” Client::Game ā†” Client::Session ā‡„ Server::Session ā†” Server::Game ā†’ SPOT ā†’ Storage
                                                                    ā†–    ā†“    ā†™
                                                                     Queryable

UI:              CLI, TUI, GTK, Qt, WebSimple, WebCanvas, WebGL, etc.
Client::Game:    <Game> is <Genre>
Client::Session: Supplier, WebSocket, etc.
Server::Session: ""
Server::Game:    <Game> is <Genre>
SPOT:            Handles commands and maintains Single Point of Truth
Storage:         Fake in-memory, Red::SQLite, etc.
Queryable:       Data cache optimized for fast queries

The Camelia image is copyright 2009 by Larry Wall. "Raku" is trademark of the Yet Another Society. All rights reserved.