Games are data
A game in Cardzo is a markdown file. The frontmatter says which template and scorer it uses, how many players it allows, how it is won, and which settings it exposes, with a key, a type, a default, and a range for each. The body is the rules, and a translation is a second file with only a body.
A codegen step turns those 78 files into one TypeScript module. Adding a game means writing a file, not code, and the website computes its own totals from the same files at build time, which is how the catalog can grow from 70 games on day one to 78 without a number being edited by hand.

