Onboarding de primeiro lançamento
Diagrama de steps
Usuário toca o ícone do app
UsuárioPrimeira abertura após instalação. Sem preferência salva, sem usuário logado.
Splash + bootstrap de tema
AppApp lê prefers-color-scheme síncrono antes do primeiro paint pra evitar flash de tema errado.
Auto-detect de locale
AppApp resolve o locale do device e cai pra en-US se nenhum recurso casar.
Sign-in (opcional)
UsuárioUsuário toca KoderSignInButton ou pula pra sessão guest se o app suportar.
Cai no home
AppPreferências persistidas e objeto user agora em escopo. Back daqui sai do app.
Pitfalls comuns
- Hardcodar ThemeMode.dark antes da preferência salva carregar — causa flash de tema errado em todo cold start.
- Mostrar a home antes do locale resolver — primeiro paint exibe chaves ICU cruas.