Work / Imposter / Wiki / Surfaces
players
Surfacecanonicalverified 2026-09-23
SURFACE.MOBILE.SETUP.PLAYERSSummary
The names, as a sheet reached from Setup and returning to it.
Raw wireframe
- .context/designs/mobile/setup/players.html
Why it is drawn this way
A sheet, not a step. It used to be step 1 of 3 with "Next: roles" at the bottom. It is reached from a row on setup now and returns there, so the only forward motion in the app is the one button that deals the cards.
Names are remembered between games. The second round is the one that actually gets played, and re-typing five names at a table is exactly where a group gives up and puts the phone down.
The field stays focused and the keyboard stays up — type, Enter, type, Enter. Tapping a name edits it in place; the × removes.
Minimum three. With two there is nobody to suspect. The CTA states the number missing rather than sitting greyed out with no reason: a disabled control with no explanation is a dead end.
Avatars are lucide icons on a neutral plate, never emoji. The first build
shipped emoji here and every one rendered as a tofu box on the simulator — five
identical grey discs, in the one place the game has to tell people apart. Emoji
are a font lookup and degrade silently; lucide draws through react-native-svg
and cannot.
Removing a player re-seats the wheel. Two players three icons apart after a deletion is a visible accident.
Related
Sources
- .context/designs/mobile/setup/players.html
- src/app/setup/players.tsx
- src/theme/icons.tsx — AVATARS
- src/lib/roles.ts — MIN_PLAYERS
Every project of mine is written down like this.
Read the résumé