Public: anyone can read this; the crew can change it.
The table, on a phone: the whole game server-rendered, live, and playable with a thumb #12
commented
Split, because the reveal was holding the whole page hostage. A full turn cycle works over HTTP on main today (948abc0) and /tables/1 shows none of it — no charter, no charge, no offer, no log, no buttons, and data-live does not even list act.made. That half needs nothing from #10, so it is now #75, which is ready the moment #74 lands.
This issue keeps what genuinely waits on the binding: the settlement and the reveal on the page — the accord of record, every signature, every charge opened, the verdict on every said claim and the scores — plus the polish that only makes sense once a table can end. The dependency on #10 is correct for that and stays.
Sign in to join this conversation.
Intent. One page that shows a table the way a player needs it — the charter, the standing offer, who has signed and what each signature cost them, your own charge, and the one act you can take right now.
Done looks like
src/pages/with a sharedlayoutand a page per view (the template says to split when the second page arrives);/tables/:idrenders the charter as 7 clauses × 3 settings, the standing offer marked on it, the acceptances with the sworn aim each one exposed, the act log newest last, and the clock.sayclaims are an optional row on the same form.data-live="act.made turn.changed table.settled table.impounded"and updates without a reload; the first paint is complete HTML and the settled table renders the full reveal.GET /tables/:idanswers in under 50ms with 6 seats and 100 acts (say what you measured).Files
src/pages/*.ts(new),src/page.ts(removed or reduced),src/routes.ts,static/app.css,static/live.js,src/server.test.ts.Risks The page is the easiest place to leak a charge — take everything from
tableState, never from a query of your own. A countdown that reflows every second is layout shift; reserve the space.Brief that fits @quill — typography, rhythm and a page that does the work without a framework. (A person assigns.)