Briefing + requesitos de MVP
Componentes do Sistema
1. Calendário View
Objetivo: Agendar clientes (single-tenant)
Características/Seções
- Ver Agenda
- Ver dias agendados e vagos
- Ver quem e em quais dias estão agendados
2. Sistema Administrativo
Objetivo: Gerenciar calendário
2.1 Dashboard Principal
Faço:
- Visualizo numero de dias vagos no mês
- Visualizo Faturamento do mês
- Visualizo previsão de faturamento do mês atual
2.2 Gerir clientes
Faço:
- Adiciono clientes
- Regras: nome, cor de identificação, hora padrão
- Excluo clientes
- Regras: excluir apenas se não tiver registros
- Inativo clientes
- Regras: apagar agendamentos futuros marcados após ser inativado
- Insiro horário padrão/usual contratado
- Regra: 8hrs padrão, podendo ser menos ou mais
- Sinalizo recorrência, ex: semanal (7 dias), quinzenal (15 dias), mensal (30 dias)
- Regras: inseir início da recorrência à partir do dia selecionado
Stack
React + Vite + Tailwind
- Figma Make — base do produto, exportada do arquivo
- Cursor — construção da interface e do código
- Supabase — dados, login e regras do banco
- Vercel — publicação, deployment
Commits (ordem cronológica)
| # | Commit | Mensagem | Detalhes do que foi feito |
|---|---|---|---|
| 1 | d4ca406 | Upload de arquivos iniciais | Upload inicial de arquivos ao GitHub. |
| 2 | 45aa438 | Delete Agendador figma make.zip | Remoção do zip após extração no repositório. |
| 3 | 154c6cb | primeiro commit | Marco: base do produto (export Figma Make). ~75 arquivos: React, Vite, UI, calendário, clientes, agendamentos. |
| 4 | 48671ce | Merge branch ‘main’ | Sincronização com o remoto após o primeiro commit local. |
| 5 | 2afd59a | Integrar frontend com Supabase para operação na nuvem | Marco: auth admin, agendador.ts, hooks, tipos/schema, faturamento e clientes na nuvem (~22 arquivos). |
| 6 | eba0db5 | Melhorar layout mobile para evitar overflow e cortes visuais | Cabeçalho, avatares no card Clientes, faturamento em telas estreitas. |
| 7 | 15f9816 | Atualizar branding da home e permitir recolher faturamento | Identidade Agendados; faturamento com Collapsible. |
| 8 | 4c2cd23 | Iniciar quadro de faturamento recolhido por padrão | Painel de faturamento abre fechado. |
| 9 | bc49524 | Corrigir overflow horizontal dos cards de calendário e agendamentos no mobile | Fix de layout nos cards principais em viewport pequena. |
| 10 | 6deec7c | Endurecer segurança P0 do Supabase e restringir cadastro público | Marco: RLS/RPC P0; sem signup público no front. |
| 11 | 91cc777 | Aplicar melhorias P1 do Supabase e exportar migrations para o repo | Migrations em supabase/migrations/; system_has_admin; RLS otimizado. |
| 12 | a5f9cb6 | Aplicar melhorias P2: faturamento via RPC, queries filtradas e remoção do Prisma | Marco: faturamento RPC; remoção do Prisma; queries filtradas. |
| 13 | 07fb2a2 | fix: permitir limpar valor e horas no dialog de novo agendamento | Apagar último dígito não restaura valor/horas indevidamente. |
| 14 | 29a0262 | feat: configurar horas padrão por atendimento nas configurações do sistema | Marco: horas e valor/hora globais; migration config; alinhamento faturamento. |
| 15 | f079e6a | feat: bloquear datas no calendário com indicação visual e validação no Supabase | Marco: datas_bloqueadas, trigger no insert, UI bloquear/desbloquear, motivo texto. |
| 16 | 3357aeb | style: padronizar CardTitle com tipografia e ícones consistentes nos cards | Títulos de cards com ícones Lucide padronizados. |
| 17 | ca4742e | feat: bloqueio de datas com 8 categorias, motivo e icones no calendário | Marco: 8 tipos, BloquearDataDialog, ícones na célula, legenda, migrations tipo. |



