Why this documentation exists
This documentation exists to give every engineer on the project — junior or intermediate Unity/C# developer — a single, authoritative source of truth covering game rules, architecture decisions, coding conventions, and task breakdowns. Rather than scattering context across GDD PDFs, Slack threads, and whiteboard photos, these pages consolidate what you need to understand the project and start contributing without guessing.Who this is for
These docs are written for junior-to-intermediate Unity/C# developers who are already comfortable writing MonoBehaviours and C# classes but may not yet have experience with reactive programming (R3), server-authoritative multiplayer (Nakama), or Clean Architecture patterns. Wherever a concept is more advanced, the relevant page links you to deeper reading.Project summary
Game modes (all Planned)
Single Player vs AI
Compete against a rule-based AI opponent across Practice, Campaign, and Daily Challenge sub-modes with four difficulty tiers.
Online Multiplayer
2–4 players in server-authoritative real-time matches via Nakama — Quick Match, Ranked, Private Rooms, and Tournaments.
Pass & Play
2–8 players on a single device, fully offline. Color-coded claim zones let everyone race simultaneously at the table.
Technology stack
Core design pillars
Explore the project
Understand the Rules
The complete, implementation-ready rules for the SET card game — deck, validation algorithm, board logic, and every edge case.
Learn the Architecture
How Clean Architecture, R3, Nakama, and VContainer fit together across the four layers of the codebase.
Follow the Roadmap
Phased delivery plan from vertical slice through full social layer and monetisation.
Start Contributing
Environment setup, coding standards, branching conventions, and your first task.
Common mistake: Treating this as a “puzzle app” rather than a digital board game. The positioning as a digital board game (round structure, social scaffolding, 3D table presence) drives a large number of architecture and UX decisions throughout the project. Keep that framing in mind as you read.