Skip to content

feat: redesign da home, hero e páginas públicas#3

Open
yuribodo wants to merge 1 commit into
masterfrom
feat/home-editions-showcase
Open

feat: redesign da home, hero e páginas públicas#3
yuribodo wants to merge 1 commit into
masterfrom
feat/home-editions-showcase

Conversation

@yuribodo

@yuribodo yuribodo commented Apr 8, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • / reescrita do zero como masthead/arquivo editorial. Wordmark gigante, edição em destaque (votingOpen → live → mais recente) e índice de edições ordenado por status (live > upcoming > finished, depois por ano desc).
  • HeroSection redesenhada: grid de 2 colunas (editorial + painel de estado contextual) elimina o void vertical do layout anterior. Painel mostra "Votar agora" / líder atual / lista de critérios conforme estado da edição. Status único — votingOpen sobrescreve o label do status.
  • VoteCard: nome do time agora é link para a página de detalhes (/[slug]/times/[id]), com ícone ↗ e hover roxo.
  • Página do time: description com guard de undefined + whitespace-pre-wrap pra preservar quebras de linha.
  • Highlights de /[slug]: removido bloco MVP, 2º lugar agora tem border-b próprio.
  • 404: nova app/not-found.tsx na mesma linguagem editorial (masthead + título gigante "NOT FOUND." + CTA).
  • Admin: tela /admin/hackathons (CRUD) + dialogs hackathon-create-dialog e hackathon-edit-dialog + ajuste no sidebar/seletor + mutations.
  • Inclui também os commits prévios de testes E2E (Clerk auth, helpers de DB isolation) que estavam em qa/playwright-e2e.

Test plan

  • / mostra a edição com votingOpen ou status === 'live' em destaque; índice abaixo lista todas (incluindo a destacada) ordenadas por status
  • /[slug] com votingOpen mostra status verde "Votação aberta" e CTA "Votar agora" no painel direito do hero
  • /[slug] com status === 'finished' mostra líder + pontuação + CTA "Ver resultados"
  • /[slug] com edição futura sem votação mostra lista de critérios + CTA "Ver times"
  • Hero sem void vertical em qualquer estado / título curto ou longo
  • Em /[slug]/votar, clicar no nome do time leva pra /[slug]/times/[id]
  • Página do time renderiza description com quebras de linha quando preenchida, e nada quando vazia
  • Acessar URL inexistente cai no app/not-found.tsx com layout editorial
  • Admin: criar/editar hackathon pelos novos dialogs
  • npx tsc --noEmit limpo
  • Suíte Playwright passa

🤖 Generated with Claude Code

- `/` reescrita do zero como masthead/arquivo editorial de edições, com edição em destaque (votingOpen / live / mais recente) e índice ordenado por status (live > upcoming > finished).
- HeroSection redesenhada: grid 2 colunas (editorial + painel de estado contextual: votar / líder / critérios), sem void vertical, status único (votingOpen sobrescreve label).
- VoteCard: nome do time agora linka para a página de detalhes.
- Página do time: description com guard + whitespace-pre-wrap.
- Highlights de `/[slug]`: removido bloco MVP, 2º lugar com border-b.
- Nova página 404 (`app/not-found.tsx`) na mesma linguagem editorial.
- Admin: tela /admin/hackathons + dialogs de create/edit + sidebar update.

Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant