Conventions: plain chrome, and how a move is made
From feedback on Waving Hands' BoardGameGeek thread: no label-and-colon lines or abstract headings around the game; histories read oldest first; the move and its button stay together and in view; warn before a wasted move rather than after; let a move be typed. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0141G6xqLeNRYEtviLWSB5Up
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
f0d7237c2b
commit
169ec4ad55
@@ -236,11 +236,30 @@ thing will happen), and the image carries it.
|
||||
the images belong to what happens, not to what you press.
|
||||
- **Our own words.** An older implementation's prose is a guide to the
|
||||
tone, never a source to copy.
|
||||
- **Plain chrome.** Headings, tabs, captions and notes say what is there
|
||||
in ordinary words. Avoid the construction a label, a colon, then an
|
||||
explanation ("The ledger: every gesture..."), and headings made of "The"
|
||||
and an abstract noun ("The game", "The tally"); readers take both as the
|
||||
mark of generated text. The images live in what happens, not in the
|
||||
labels around it.
|
||||
- **Changing text is not changing rules.** Chronicle wording is not part
|
||||
of the ledger, so it ships without a rules revision; the deploy gate
|
||||
compares outcomes, not sentences. A test that pins a phrase should pin
|
||||
the fact inside it.
|
||||
|
||||
## The move
|
||||
|
||||
- **Every history reads top to bottom**, oldest first, and scrolls to the
|
||||
newest line: the ledger, the chronicle, table talk. That is the order
|
||||
people already know from chat.
|
||||
- **The move and its button stay together and in view.** Whatever the
|
||||
player has chosen this turn, what it will do, any warning, and the
|
||||
button that commits it sit in one row that does not scroll away.
|
||||
- **Warn before, not after.** A move that is legal but wasted is pointed
|
||||
out while it can still be changed, and left legal.
|
||||
- **A move can be typed** when the game's moves have short names, with
|
||||
Enter to commit and Backspace to take one back.
|
||||
|
||||
## Things learned the hard way
|
||||
|
||||
- Caddy's `try_files` rewrites `/api` before `reverse_proxy` unless the
|
||||
|
||||
Reference in New Issue
Block a user