Keep the same progress on every device: grades and schedule, read pages, checklists, mock runs, stories and notes.
Enter the sync passphrase to connect. Your existing progress here is merged with what the server already has, and from then on every change is uploaded within a couple of seconds.
localhost in the phone's browser.Training, flashcards, mock interviews and notes all work on a phone; grades made there show up here on the next sync, which happens automatically when a tab comes back into view.
Progress and notes still live in this browser's localStorage, so everything works offline. When connected, each changed store is uploaded to the server (Cloudflare D1) with the version this device last saw; if another device changed the same store in the meantime, the two versions are merged (union of cards, runs and notes, newer record wins) rather than one overwriting the other. The active training session is not synced: it belongs to the device you are on.
The passphrase is a server secret (NUXT_SYNC_PASSPHRASE); wrong attempts are rate-limited. The session is a sealed, HttpOnly cookie. Settings → Reset also clears the server copy on the next upload, so use Export first if unsure.