Concepts

The JSON document describes the game table: at minimum a board and pieces. Optional sections add glyphs, side areas, and annotations.

Top-level structure

Property Required Role
renderer no Which rendering engine to use (default: default)
board yes Board geometry and style
pieces yes Piece placement (format varies by renderer)
legend no Maps keys to glyphs/colours
areas no Side panels (stashes, buttons, etc.)
annotations no Overlays for moves and highlights
options no Renderer flags

See the schema reference for the authoritative property list.

Board

The board is drawn first. Styles include square grids, vertex boards, hex fields, sowing pits, circular boards, and many more. See Boards.

Pieces

Usually a string grid (rows separated by \n) where each character maps to a legend entry that represents a piece on the board. Specialized renderers use arrays or structured objects instead. See Engines.

Legend

Maps short keys to glyph definitions — simple names, composite arrays, gradients, player colours, text glyphs, etc. See Glyphs.

Areas

Specialized sections, usually below the board, to provide additional information: piece stashes, button bars, Homeworlds stashes, polyomino holding areas, and more.

Annotations

Drawn above pieces: move arrows, enter/exit markers, dots, outlines, etc. See Annotations.