Account and settings
/account — "Manage your profile, plan, and learners." Signed out, it is a sign-in wall: "Your profile, plan, and learners live here."
There is no separate settings page. Everything a user can configure is on this one screen, in four cards.
Profile
Name, avatar, and Member since. Save changes commits it.
Plan
What you are on now, with Compare plans into /pricing and direct upgrades:
- Go Family · $18/mo →
- Take a Band · $9/mo →
During the launch promo this card reads Early access · free / Nothing to bill — because nothing is billed while the promo is open. See 8 · Plans, access and learners for what changes on 2026-09-15.
Learning mode
Read that carefully: the mode is derived per learner, not chosen. This control is a preview of what a tier looks like, plus a switcher for trying one on. TierPreview renders the sample.
The theme applies only to learning surfaces — never to account or marketing pages. A tier that looks stuck is nearly always localStorage rather than a bad deploy.
Learners
The profile list, showing n / cap where the cap comes from your plan — 1 on Curious or Band, 4 on Family. Per learner: Change avatar, Learner name, Remove learner. Below the cap, + Add learner appears.
Each learner keeps their own progress, streak and mastery. Switching who is learning happens from the top-bar picker, not here.
Admin
Admins see "You have admin access." and Open admin panel →. The link is rendered from the signed-in user's role — see 20 · The admin backend.
What syncs, and when
Progress is local-first and syncs to the cloud when signed in. SyncStatus in the UI reports the current state.
One rule that is not visible in the UI and matters enormously: a sync must never treat an empty local state as authoritative. Wiping a cloud profile because a fresh device had nothing on it is the single worst bug this surface can have, and it has been guarded against — do not remove that guard when refactoring.