Sign-in page: lead with Sign in with OTM (shared standard) #6

Closed
opened 2026-10-19 04:29:06 +00:00 by tonym · 1 comment
Owner

Standardize this app's sign-in page on the shared pattern (reference: Moonbase 0.134.0 src/app/login/page.tsx; spec: platform docs/first-party-app-guide.md §2b):

  1. Brand (mark + name + tagline) above one centered card.
  2. Card leads with a full-width primary button Sign in with OTM → /sso/authorize?aud=<audience>&next=<same-origin path>.
  3. Muted line under it: Your OTM account — Face ID, Touch ID or a passkey works there.
  4. Other ways to sign in — small text button that swaps the card body to the local method(s), unchanged, ending with a small Sign in with OTM link back. No "or" divider.
  5. ?reason= sentences for not_enabled / invalid_token / link_already_used / no_account / server_error.

Rules: lead with OTM only when the app is actually wired (secret + audience present, read server-side); never remove the local method; keep the app's own palette. The OTM admin's own /signin says "Sign in to your Over the Moon account" (0.148.3).

Done = page matches, version + changelog bumped, checks green, deployed.

Standardize this app's sign-in page on the shared pattern (reference: Moonbase 0.134.0 `src/app/login/page.tsx`; spec: platform `docs/first-party-app-guide.md` §2b): 1. Brand (mark + name + tagline) above one centered card. 2. Card leads with a full-width **primary** button **Sign in with OTM** → `/sso/authorize?aud=<audience>&next=<same-origin path>`. 3. Muted line under it: *Your OTM account — Face ID, Touch ID or a passkey works there.* 4. **Other ways to sign in** — small text button that swaps the card body to the local method(s), unchanged, ending with a small *Sign in with OTM* link back. No "or" divider. 5. `?reason=` sentences for not_enabled / invalid_token / link_already_used / no_account / server_error. Rules: lead with OTM only when the app is actually wired (secret + audience present, read server-side); never remove the local method; keep the app's own palette. The OTM admin's own `/signin` says "Sign in to your Over the Moon account" (0.148.3). Done = page matches, version + changelog bumped, checks green, deployed.
Author
Owner

Shipped in 0.6.1 (41e09d0), deployed 2026-10-19. names has no sign-in page and no local accounts, so the standard’s no-local-method form applies: the existing Sign in with OTM link is now the single primary action with the passkey helper line under it; nothing else to offer under “Other ways”. Verified live.

Shipped in 0.6.1 (41e09d0), deployed 2026-10-19. names has no sign-in page and no local accounts, so the standard’s no-local-method form applies: the existing Sign in with OTM link is now the single primary action with the passkey helper line under it; nothing else to offer under “Other ways”. Verified live.
tonym closed this issue 2026-10-19 04:40:16 +00:00
Sign in to join this conversation.
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: tonym/names#6