Skip to main content
This glossary is the single source of truth for terminology used across the codebase, documentation, and day-to-day team discussions. When a concept has a name here, use that exact name — in code, in code reviews, in PRs, and in Slack. Using synonyms or paraphrases where precise terms exist introduces ambiguity that compounds quickly across a multi-layer codebase.
These terms map directly to class names, interface names, enum values, and method names in the codebase. Using different words — for example, writing "hand" instead of "selection" or "board check" instead of "AnySetExists" — causes confusion during reviews and may indicate a misunderstood concept. When in doubt, consult this page first.

Domain & Game Terms


Architecture & Technology Terms


Data Formats

CardId encoding, JSON config schemas, save format, and network message envelopes.

FAQ

Common contributor questions on setup, architecture, rules, and scope.

Domain Model

How Domain, Application, Infrastructure, and Presentation layers are structured.

Set Validation

Deep-dive into the SetValidator algorithm and invariant enforcement.