2.8 KiB
2.8 KiB
Plano de implementacao do app PediFoods (Skip + SwiftUI)
Premissas de design e navegacao
- A tabbar e o centro de navegacao. Toda navegacao que nao for modal/over-context acontece dentro da tabbar.
- Login e cadastro ficam fora da tabbar. Ao logar/cadastrar, a Home abre ja com as tabs ativas.
- O verde da imagem
home_tabs.pnge o primary. O verde fluorescente sera usado raramente e fica como cor terciaria. - Tipografia base: Plus Jakarta Sans.
Etapa 1 — Fundacao tecnica (obrigatoria antes das telas)
- Criar o projeto Skip (Fuse) e estrutura base de pastas.
- Configurar tokens do design system e tema (cores, tipografia, espacamentos, raios, sombras).
- Implementar o service base de API:
- Camada HTTP
- Headers padrao
- Tokens por modulo (customer, store, resource)
- Tratamento de erros e rate limit
- Persistencia segura de JWT
- Criar um coordinator de navegacao:
- Fluxo de autenticacao (login/cadastro/OTP) fora da tabbar
- Fluxo principal com tabbar (Home, Cart, Orders, Profile)
- Modais over-context (address, filtros, etc)
- Configurar state global (sessao, perfil, cart, endereco ativo, favoritos).
- Integrar permissions e GPS:
- Solicitar permissao ao cadastrar endereço
- Obter localizacao atual ao cadastrar endereço
- Cache de ultima localizacao valida
Etapa 2 — Autenticacao (fora da tabbar)
- Tela Login
- Tela Cadastro
- Tela OTP (8 digitos)
- Fluxo pos-login:
- Buscar perfil
- Abrir Home com tabbar ativa
Etapa 3 — Home e listagem de lojas (Tab Home)
- Home com header, busca e categorias
- Listagem de lojas (API /api/app/stores com lat/lng)
- Filtros e busca
- Favoritos
Etapa 4 — Store Detail e Catalogo
- Tela de detalhes da loja
- Catalogo por categorias
- Produtos com addons
- Favoritos de loja
Etapa 5 — Produto e carrinho
- Tela de produto (detalhes + adicionais)
- Carrinho (Tab Cart)
- Atualizacao de quantidade e subtotal
Etapa 6 — Checkout e pagamento
- Tela de checkout
- Endereco de entrega
- Metodos de pagamento (PIX, credito, debito, dinheiro)
- Criacao de pedido
- Fluxo de PIX (payload e QR)
Etapa 7 — Pedidos e rastreio (Tab Orders)
- Lista de pedidos
- Detalhe do pedido
- Tracking de status
Etapa 8 — Perfil e enderecos (Tab Profile)
- Perfil do usuario
- Lista de enderecos
- Criar/editar endereco
Etapa 9 — Mapa e GPS
- Mapa iOS via MapKit
- Mapa Android via ComposeView (Google Maps)
- Pinos de loja e localizacao atual
- Ajustes de permissao e fallback sem GPS
Etapa 10 — Polimento e release
- Dark mode
- Estados vazios e erros
- Performance e cache
- Build iOS e Android
- Export APK/AAB
Etapa 11 — Ajustes de UI (referencias)
- Login (light/dark)
- Cadastro
- OTP
- Carrinho
- Checkout
- Perfil
- Pedidos