Formulários
Regras
- React Hook Form para estado do formulário —
useForm()+register()ou Controller - Esquema Zod para validação — compartilhe entre cliente e servidor
- Exibição de erros: inline abaixo de cada campo, texto vermelho, associado via
aria-describedby - Formulários multi-etapas: padrão de assistente com estado da etapa, valide cada etapa independentemente
- Uploads de arquivos: componente separado com pré-visualização, arrastar e soltar, indicador de progresso
- Salvamento automático para formulários longos — salvar com debounce no servidor/localStorage
- Acessibilidade: rótulos, descrições de erro, gerenciamento de foco em falha de validação
- Desabilitar envio durante carregamento — mostrar spinner, evitar envio duplicado