Today
The browser saves on this device with localStorage.
Refreshing does not erase the checklist.
Guide 08 · Progress that follows the family
The browser saves progress first. On the hosted site, one private family link can sync trusted devices through Vercel's database.
Keep the link like a house key. Anyone who has it can read and change this family’s Sidequest progress.
The browser saves on this device with localStorage.
Refreshing does not erase the checklist.
The same save also goes to a private cloud record. Another family device with the link can load it.
PRESS SAVE → BROWSER SAVES FIRST → CLOUD TRIES SECOND
cloud
down? The local device keeps working.
cloud back?
The next load tries again.
The server turns the key into a scrambled record name. It does not store the key itself and cannot list family keys.
Checklist boxes, scene number, completed clues, small game settings.
Names, photos, recordings, door codes, passwords, or device-control secrets.
Put the link in a family password manager or send it directly between trusted devices. If the link is lost, access to that cloud record is lost too.
The server accepts a save only when it was based on the newest copy.
For "once checked, stays checked," combine both lists so a check on either device wins.
Two devices can finish different steps without losing either.
Load the newest revision, then save one explicit cleared list.
Grown-up technical setup
SIDEQUEST_STATE_PEPPER.
Generate at least 32 random bytes with
openssl rand -base64 48.
DATABASE_URL. The endpoint
creates its small tables on first use.
DATABASE_URL and
SIDEQUEST_STATE_PEPPER never go into browser
JavaScript or the repository.