First-launch onboarding

Onboarding specs/koder-app/behaviors.kmd

Step diagram

  1. User taps the app icon

    User

    First open after install. No saved preference, no signed-in user.

  2. Splash + theme bootstrap

    App

    App reads prefers-color-scheme synchronously before first paint to avoid the flash of wrong theme.

    specs/themes/light-dark.kmd

  3. Locale auto-detect

    App

    App resolves the device locale and falls back to en-US if no resource matches.

    specs/i18n/contract.kmd

  4. Sign-in (optional)

    User

    User taps KoderSignInButton or skips into a guest session if the app supports it.

    specs/koder-app/behaviors.kmd

  5. Lands on home

    App

    Persisted preferences and user object are now in scope. Navigation back from here exits the app.

Common pitfalls