Todas as melhorias visuais propostas foram implementadas com sucesso, mantendo 100% do texto original. As mudanças são apenas de apresentação e organização.
Localização: Linha ~40 de home.tsx
Antes:
- Apenas texto descritivo
Depois:
- 3 pills de métricas antes do texto principal:
- 15 Cantorias
- 12 Cantadores (dinâmico)
- 6 Estilos
Componente criado: view/src/components/hero/MetricPill.tsx
Todo o texto original foi mantido!
Localização: Linha ~103 de home.tsx
Antes:
- Apenas texto explicativo
Depois:
- Vídeo do YouTube embarcado (Entre Cordas e Poesia - Ep. 1)
- Aspect ratio 16:9, responsivo
- Bordas arredondadas com shadow
Todo o texto original foi mantido!
Localização: Linha ~274 de home.tsx (depois de "O Que É Repente", antes de "Os Cantadores")
Novo conteúdo:
- 15 Cantorias 🎵
- 12 Cantadores 🎸
- 6 Estilos 📏
- 84 Estrofes 📖
- Calcula automaticamente do acervo
- Mostra top 5 estilos com contagem
- Barras coloridas proporcionais
- Cores diferentes por estilo
Componentes criados:
view/src/components/dashboard/MetricCard.tsxview/src/components/dashboard/StyleBar.tsx
Benefício: Visualização rápida dos dados do acervo
Localização: Linha ~1002 de home.tsx
Antes:
- 3 cards simples com texto básico
Depois:
- 3 cards completos e detalhados:
- Título: "PRECISAMOS DE AJUDA!"
- 4 itens de contribuição
- Callout destacado: desafio de fugir de clichês
- Link para issues de design
- Badge: "AJUDA NECESSÁRIA"
- Frontend, Backend, IA, Database
- Link para issues de desenvolvimento
- Badge: "BOAS ISSUES"
- Transcrições, biografias, correções
- Link direto para criar issue
- Badge: "1 CLIQUE"
Componente criado: view/src/components/contribute/ContribCard.tsx
Todo o texto original redistribuído nos cards!
Localização: Linha ~1103 de home.tsx
Status: O vídeo embed da websérie já estava implementado desde a versão original!
Mantido:
- Vídeo do YouTube (Ep. 1)
- Todo o texto explicativo
- Lista de participantes
- Links para playlist e issue
view/src/components/
├── hero/
│ └── MetricPill.tsx # Pills de métricas no Hero
├── dashboard/
│ ├── MetricCard.tsx # Cards grandes de métricas
│ └── StyleBar.tsx # Barras de progresso para estilos
└── contribute/
└── ContribCard.tsx # Cards de contribuição detalhados
view/src/routes/home.tsx- 6 edições aplicadas com sucesso
1. Hero
├── Título + Descrição
├── [NOVO] 3 Métricas Visuais (pills)
└── Texto original completo
2. O Que É Repente
├── Descrição
├── [NOVO] Vídeo Embed (YouTube)
├── 6 cards de características
├── Exemplo de estrofe
└── Contexto histórico (texto completo)
3. [NOVA SEÇÃO] Acervo em Números
├── 4 métricas principais (cards)
├── Gráfico de barras (estilos)
└── CTA para explorar acervo
4. Os Cantadores
└── Texto e cards originais mantidos
5. Desafios da Preservação
└── Texto original mantido
6. Como o Vilanova Organiza
└── Texto original mantido
7. O Que Já Conquistamos
└── Texto original mantido
8. Como Contribuir
└── [REORGANIZADO] 3 cards detalhados
9. Websérie "Entre Cordas e Poesia"
└── Vídeo embed + texto original mantidos
10. Footer
└── Original mantido
- ✅ Adicionadas métricas visuais no Hero (3 pills)
- ✅ Adicionado vídeo embed em "O Que É Repente"
- ✅ Criada nova seção "Acervo em Números" com dashboard
- ✅ Reorganizada seção "Contribua" em cards detalhados
- ✅ Vídeo da websérie mantido (já existia)
- ✅ 100% do texto original preservado
- ❌ Nenhuma palavra alterada
- ❌ Nenhuma frase removida
- ❌ Nenhum conteúdo simplificado
- ❌ Nenhuma mudança de tom
- ✅ Entende a proposta mais rápido (números visuais)
- ✅ Vídeos ajudam na explicação (complementam texto)
- ✅ Dados do acervo ficam mais claros (dashboard)
- ✅ Oportunidades de contribuição mais visíveis
- ✅ Apresentação mais profissional
- ✅ Melhor hierarquia de informação
- ✅ Maior escaneabilidade
- ✅ Mantém toda a profundidade do conteúdo
<MetricPill value={15} label="Cantorias" />- Pills compactas com bordas
- Números em destaque
- Label descritivo
<MetricCard
value={15}
label="Cantorias"
icon="🎵"
color="#C84B31"
/>- Cards grandes com ícone
- Hover scale effect
- Cores customizáveis
<StyleBar
estilo="Galope à Beira Mar"
count={5}
maxCount={5}
color="#C84B31"
/>- Barra de progresso proporcional
- Label + contagem
- Animação suave
<ContribCard
icon="🎨"
title="Design"
subtitle="PRECISAMOS DE AJUDA!"
items={["Item 1", "Item 2"]}
callout={{ title: "...", description: "..." }}
linkText="Ver Issues"
linkUrl="..."
badgeText="URGENTE"
badgeColor="#C84B31"
/>- Card completo e estruturado
- Suporte a callout destacado
- Link externo + badge
- Total de cantadores calculado via
agregarCantadores() - Total de cantorias: 15 (hardcoded por enquanto)
- Total de estilos: 6 (hardcoded por enquanto)
- Conta automática de estilos no acervo
- Ordena por frequência
- Mostra top 5
- Calcula percentual para barras
Código:
const estilosStats = useMemo(() => {
const counts: Record<string, number> = {};
acervoData.repentes.forEach((cantoria: any) => {
const estilo = cantoria.estilo?.nome || "Não especificado";
counts[estilo] = (counts[estilo] || 0) + 1;
});
return Object.entries(counts)
.sort(([, a], [, b]) => b - a)
.slice(0, 5);
}, []);- ✅ Sem erros de lint
- ✅ TypeScript types corretos
- ✅ Servidor dev iniciado com sucesso
- ✅ Todos os componentes compilam
- ✅ Imports corretos
- Responsividade mobile - testar em telas pequenas
- Performance dos vídeos - lazy loading dos iframes
- Animações de entrada - fade in ao scroll
- Dark mode - variantes dos componentes
- Acessibilidade - ARIA labels nos cards
- Buscar total de cantorias do
indexData.metadata.total_repentes - Buscar total de estrofes do
indexData.metadata.total_estrofes_catalogadas - Calcular total de estilos únicos do acervo
#C84B31- Vermelho principal (Vilanova)#2E5266- Azul escuro#4A7C59- Verde#D49B54- Dourado#8B6F47- Marrom (bordas)
border-2 border-[#8B6F47]- Bordas consistentesrounded-lg- Cantos arredondadosshadow-lg/shadow-2xl- Sombrashover:scale-105- Efeito hovertransition-all duration-300- Animações suaves
Todas as melhorias visuais foram implementadas com sucesso, mantendo 100% do conteúdo original intacto. O site agora tem:
- ✅ Melhor hierarquia visual
- ✅ Dados mais acessíveis
- ✅ Apresentação mais profissional
- ✅ Maior apelo visual
- ✅ Mesma profundidade de conteúdo
O Vilanova está mais bonito e mais claro! 🎉