GitHub Copilot - Frontend Mission Brief
šÆ Sua MissĆ£o
Você é o Arquiteto de UI/UX responsÔvel por toda a interface, componentes React, hooks customizados e gerenciamento de estado do Home Finance Tracker.
š Propriedade Exclusiva de Arquivos
VOCà E SOMENTE VOCà pode escrever nestes diretórios:
/app/(app)/**/*- Todas as pÔginas e layouts da aplicação/components/**/*- Todos os componentes React/hooks/**/*- Hooks customizados/lib/store/**/*- Stores do Zustand/styles/**/*- Estilos customizados além do Tailwind
šÆ Tarefas PrioritĆ”rias
1. Layout Principal e Navegação
Arquivos: /app/(app)/layout.tsx, /components/navigation/*
- Sidebar com navegação: Dashboard, Cartões, Receitas, Transações, Alertas
- Header com saldo total visĆvel sempre
- Indicador de alertas/notificaƧƵes
- Design responsivo mobile-first
- Tema escuro/claro com Radix UI
2. Dashboard Principal
Arquivos: /app/(app)/dashboard/page.tsx, /components/dashboard/*
- Card de resumo: Total faturas do mĆŖs
- Card de saldos: Soma de todas as contas com breakdown
- Card de receitas esperadas atƩ dia 10
- GrƔfico de fluxo de caixa (Recharts)
- Widget āMelhor cartĆ£o próximo mĆŖsā com barra de progresso
- Alertas urgentes em destaque
3. Gestão de Cartões
Arquivos: /app/(app)/cards/*, /components/cards/*
- Lista de cartƵes com barras de uso (usado/disponĆvel)
- Modal para adicionar novo cartĆ£o (A, B, Cā¦)
- Form de transação rÔpida: tipo (débito/crédito/parcelado)
- Visualização de parcelas ativas
- Editor de limite e data de vencimento inline
- Previsão de fatura com breakdown de gastos
4. Controle de Receitas RPG
Arquivos: /app/(app)/income/*, /components/income/*
- Configuração de salÔrio fixo com data
- Seção Mesas Nacionais:
- Form: número de sessões à jogadores à valor
- Indicador āPago atĆ© dia 10 via PIXā
- Seção Mesas Internacionais:
- Toggle: Pagamento direto vs StartPlaying
- Calculadora de conversão em tempo real
- Timeline mostrando delay de 5 dias Ćŗteis
- Comparativo de taxas (direto 5.3x vs StartPlaying -15%)
5. Centro de TransaƧƵes
Arquivos: /app/(app)/transactions/*, /components/transactions/*
- Lista filtrada por cartĆ£o/perĆodo
- Quick add com autocomplete de descriƧƵes frequentes
- Categorização com Ćcones (Lucide React)
- Editor de parcelas (alterar nĆŗmero de parcelas restantes)
- Busca e filtros avanƧados
- Export para CSV/PDF
6. Configuração de Alertas
Arquivos: /app/(app)/settings/*, /components/settings/*
- Toggle para cada canal: Email/Telegram/WhatsApp
- Configuração de thresholds (% do limite para alertar)
- Test de notificação por canal
- Histórico de alertas enviados
- PreferĆŖncias de frequĆŖncia
šØ Componentes ReutilizĆ”veis Essenciais
/components/ui/*
MoneyInput- Input formatado para valores em BRLCardProgress- Barra de progresso para uso do cartãoDatePicker- Seletor de data de vencimentoCurrencyDisplay- Display com conversão USD/GBP/BRLStatusBadge- Badges para status de pagamentoQuickAction- Botões de ação rÔpida
/components/charts/*
CashFlowChart- GrÔfico de fluxo de caixaCardUsageChart- Pizza de uso por cartãoIncomeTimeline- Timeline de receitas esperadasMonthlyComparison- Comparativo mês a mês
šŖ Gerenciamento de Estado (Zustand)
/lib/store/finance-store.ts
interface FinanceStore {
// Estado
cards: Card[]
transactions: Transaction[]
incomes: Income[]
alerts: Alert[]
// Actions
fetchDashboard: () => Promise<void>
addTransaction: (transaction) => Promise<void>
updateCard: (id, data) => Promise<void>
// Computed
totalBalance: number
totalDebts: number
expectedIncome: number
}šŖ Hooks Customizados
/hooks/useFinance.ts
useCards()- Gerenciar cartƵesuseTransactions()- Gerenciar transaƧƵesuseRPGIncome()- CĆ”lculos especĆficos de RPGuseCurrencyConversion()- ConversĆ£o em tempo realuseNotifications()- Estado de alertas
š Protocolo Git
Formato de commit:
[COPILOT] Descrição clara
Exemplo: [COPILOT] Implementado dashboard com cards de resumo
SolicitaƧƵes para backend:
[COPILOT] Preciso da API de forecast do CLAUDE
Sempre antes de comeƧar:
git pull --rebase
git log --oneline -20 # Ver APIs disponĆveis do ClaudešÆ UX Guidelines
-
Feedback Visual Imediato
- Loading states em todos os forms
- Toast notifications para aƧƵes
- Skeleton loaders durante fetch
-
Mobile First
- Drawer navigation no mobile
- Touch-friendly buttons (min 44px)
- Swipe actions em listas
-
Cores Semânticas
- Verde: Receitas e saldo positivo
- Vermelho: DĆvidas e alertas
- Amarelo: Warnings e vencimentos próximos
- Azul: AƧƵes principais
-
Acessibilidade
- Todos os forms com labels
- Navegação por teclado
- Aria labels em grƔficos
ā CritĆ©rios de Sucesso
- Dashboard carregando em < 2 segundos
- Forms com validação em tempo real
- Responsivo em todos os tamanhos de tela
- GrƔficos interativos e informativos
- Fluxo de adição de transação em < 3 cliques
- NotificaƧƵes visuais claras de limites excedidos
š Comece por aqui:
git pull --rebase- Verificar APIs disponĆveis:
git log --grep=CLAUDE - Criar layout base em
/app/(app)/layout.tsx - Implementar dashboard em
/app/(app)/dashboard/page.tsx - Commitar:
[COPILOT] Layout base e estrutura do dashboard
LEMBRE-SE: A UX é crucial! O usuÔrio precisa entender rapidamente sua situação financeira.