# 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.png` e 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) 1. Criar o projeto Skip (Fuse) e estrutura base de pastas. 2. Configurar tokens do design system e tema (cores, tipografia, espacamentos, raios, sombras). 3. 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 4. 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) 5. Configurar state global (sessao, perfil, cart, endereco ativo, favoritos). 6. 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) 1. Tela Login 2. Tela Cadastro 3. Tela OTP (8 digitos) 4. Fluxo pos-login: - Buscar perfil - Abrir Home com tabbar ativa ## Etapa 3 — Home e listagem de lojas (Tab Home) 1. Home com header, busca e categorias 2. Listagem de lojas (API /api/app/stores com lat/lng) 3. Filtros e busca 4. Favoritos ## Etapa 4 — Store Detail e Catalogo 1. Tela de detalhes da loja 2. Catalogo por categorias 3. Produtos com addons 4. Favoritos de loja ## Etapa 5 — Produto e carrinho 1. Tela de produto (detalhes + adicionais) 2. Carrinho (Tab Cart) 3. Atualizacao de quantidade e subtotal ## Etapa 6 — Checkout e pagamento 1. Tela de checkout 2. Endereco de entrega 3. Metodos de pagamento (PIX, credito, debito, dinheiro) 4. Criacao de pedido 5. Fluxo de PIX (payload e QR) ## Etapa 7 — Pedidos e rastreio (Tab Orders) 1. Lista de pedidos 2. Detalhe do pedido 3. Tracking de status ## Etapa 8 — Perfil e enderecos (Tab Profile) 1. Perfil do usuario 2. Lista de enderecos 3. Criar/editar endereco ## Etapa 9 — Mapa e GPS 1. Mapa iOS via MapKit 2. Mapa Android via ComposeView (Google Maps) 3. Pinos de loja e localizacao atual 4. Ajustes de permissao e fallback sem GPS ## Etapa 10 — Polimento e release 1. Dark mode 2. Estados vazios e erros 3. Performance e cache 4. Build iOS e Android 5. Export APK/AAB ## Etapa 11 — Ajustes de UI (referencias) 1. Login (light/dark) 2. Cadastro 3. OTP 4. Carrinho 5. Checkout 6. Perfil 7. Pedidos