Um simulador de fluxo de compra de ingressos focado em Gestão de Estado Crítico e Tipagem Segura.
Demonstrar a implementação de um carrinho de compras performático e seguro, simulando desafios reais de plataformas de ingressos (como BaladAPP/Ticketmaster), onde a integridade dos dados financeiros (preço/quantidade) é prioritária.
| Tecnologia | Por que foi escolhida? |
|---|---|
| React + TypeScript | Garantia de integridade de dados (preços sempre numéricos) e DX superior. |
| Zustand | Gerenciamento de estado global minimalista para evitar prop drilling entre Lista de Eventos e Carrinho, sem a verbosidade do Redux. |
| CSS Modules / Inline | Estilização escopada e ágil para focar na lógica de negócio. |
| Vite | Build tool moderna para feedback instantâneo durante o desenvolvimento. |
- Listagem de Eventos: Renderização dinâmica baseada em mocks tipados.
- Carrinho Inteligente: Lógica para adicionar/remover e calcular totais em tempo real.
- UX Resiliente: Fallback automático para imagens quebradas (sem exibir ícones de erro).
- Tipagem Estrita: Interfaces
Event,CartItemeCartStatepara blindar o código.
- Zustand vs Context API: O uso do Zustand simplificou a lógica de
selectors, evitando re-renderizações desnecessárias que ocorreriam com Context API nativa em um carrinho complexo. - Fallback de Imagem: Implementação de um
useStatelocal no componenteEventCardpara gerenciar erros de carregamento de imagem de forma graciosa.
- Implementação de Testes E2E com Playwright.
- Persistência de carrinho no
localStorage. - Melhorias de Acessibilidade (a11y).
Desenvolvido por Vinicius