
A multiplayer kit you install in your own Google Sheet and bound Apps Script project. Play Wordwright, Four in a Row, Dots and Boxes, Checkers, and Fivefold together in your browsers.
Clasp and local development are optional developer workflows.
We recommend a separate Google account to keep Game Night mail, Drive files, and service authorizations separate from your personal or everyday work activity. This is optional. The account that deploys the web app sends invitations and reminders through MailApp and owns the installation's Game Night files Drive folder. The game spreadsheet contains the game data; players use the web-app link and do not need spreadsheet access. Use the same account for setup, deployment, and optional repair triggers.
Personal and organization-managed Google accounts can be used. Google Workspace administrators may restrict public web apps or service authorization. Google mail delegation, aliases, and shared mailboxes are outside this kit and must be configured separately if desired. Choosing a dedicated account does not change player authentication; see identity and access.
This is a locally verified release candidate, not production-ready. Google authorization, quotas, iframe behavior, copied-sheet deployment, mail and Drive permissions still require the acceptance checklist. There is no Google account authentication for players. Trusted mode allows anyone with the shared code to choose any ordinary member's name. See identity and access.
No automatic Meet creation, universal MP4 export, WebCodecs encoder, cloud synchronization service, or public spreadsheet template is implemented. Recording requires a visible tab and compatible browser APIs/codec/canvas security; JSON export remains independent. Storage uses Sheets cells, including match action history, so sufficiently long games can reach Google's cell limit. There is no automatic archival or data migration from a live Crabbles instance.
The Maple, Walnut, Felt and Slate images were carried over from the supplied project. Their known origin and unresolved rights are recorded in licences; inclusion is not a claim of legal clearance.
Setup · Operator checklist · Google acceptance · Optional clasp · Troubleshooting · Identity · Games · Themes · Replay v1 · Upgrade/backup · Licences · Verification
Node 20+ runs npm test and npm run build (ZIP and unzip utilities also required). dist/apps-script is generated; edit src instead. Browser/PDF checks additionally need Playwright and Chrome. Board regeneration and the optional EffectCraft converter need Python 3 and Pillow; EffectCraft rendering also needs effectcraft-cli. None of these are installation requirements.
For a local preview, allocate a port first: PORT=$(portbroker alloc --name game-night-dev) then node tools/dev_server.js --port "$PORT". It binds to LAN and uses synthetic demo accounts only. Without --words <ENABLE-file> its test dictionary accepts all words. Never use that harness as the Google deployment.

A multiplayer kit you install in your own Google Sheet and bound Apps Script project. Play Wordwright, Four in a Row, Dots and Boxes, Checkers, and Fivefold together in your browsers.
Clasp and local development are optional developer workflows.
We recommend a separate Google account to keep Game Night mail, Drive files, and service authorizations separate from your personal or everyday work activity. This is optional. The account that deploys the web app sends invitations and reminders through MailApp and owns the installation's Game Night files Drive folder. The game spreadsheet contains the game data; players use the web-app link and do not need spreadsheet access. Use the same account for setup, deployment, and optional repair triggers.
Personal and organization-managed Google accounts can be used. Google Workspace administrators may restrict public web apps or service authorization. Google mail delegation, aliases, and shared mailboxes are outside this kit and must be configured separately if desired. Choosing a dedicated account does not change player authentication; see identity and access.
This is a locally verified release candidate, not production-ready. Google authorization, quotas, iframe behavior, copied-sheet deployment, mail and Drive permissions still require the acceptance checklist. There is no Google account authentication for players. Trusted mode allows anyone with the shared code to choose any ordinary member's name. See identity and access.
No automatic Meet creation, universal MP4 export, WebCodecs encoder, cloud synchronization service, or public spreadsheet template is implemented. Recording requires a visible tab and compatible browser APIs/codec/canvas security; JSON export remains independent. Storage uses Sheets cells, including match action history, so sufficiently long games can reach Google's cell limit. There is no automatic archival or data migration from a live Crabbles instance.
The Maple, Walnut, Felt and Slate images were carried over from the supplied project. Their known origin and unresolved rights are recorded in licences; inclusion is not a claim of legal clearance.
Setup · Operator checklist · Google acceptance · Optional clasp · Troubleshooting · Identity · Games · Themes · Replay v1 · Upgrade/backup · Licences · Verification
Node 20+ runs npm test and npm run build (ZIP and unzip utilities also required). dist/apps-script is generated; edit src instead. Browser/PDF checks additionally need Playwright and Chrome. Board regeneration and the optional EffectCraft converter need Python 3 and Pillow; EffectCraft rendering also needs effectcraft-cli. None of these are installation requirements.
For a local preview, allocate a port first: PORT=$(portbroker alloc --name game-night-dev) then node tools/dev_server.js --port "$PORT". It binds to LAN and uses synthetic demo accounts only. Without --words <ENABLE-file> its test dictionary accepts all words. Never use that harness as the Google deployment.