No updates detected yet. GitHub releases will appear here.
The maker's introduction consists of the line above. Read the repository README for more details. Repository README ↗
Loading the full README.
Read the full README ↗Site do campeonato Caserna Kart Racing: Painel, Classificação, Estatísticas, Disputa pela Camisa Branca e um painel restrito para a Diretoria.
npm install
npm run dev
Abra http://localhost:3000.
Não existe tela de upload no site — essa foi uma decisão consciente (ver briefing do projeto). O fluxo é:
src/data/etapas/ (um arquivo por
etapa/categoria, seguindo o formato de src/data/etapas/elite-t2-c2.ts) e registrados em
src/data/etapas.ts.src/lib/scoring.ts) e as telas recalculam tudo sozinhas a
partir desses dados — nenhuma tela precisa ser alterada quando uma etapa nova entra.Pontos perdidos por advertência disciplinar (src/data/etapas.ts, array penalidades) e
faltas não justificáveis (faltas) também são alimentados manualmente ali, sem motivo
exposto nas telas públicas — só o número de pontos descontados.
A aba Diretoria em si fica oculta do menu até o login — só aparece depois que alguém
autorizado entra. O acesso ao login é público: um ícone de pessoa no topo da sidebar (e no
topbar mobile) abre a tela de entrar/cadastrar pra qualquer visitante. A rota direta
/diretoria também continua funcionando, com o mesmo formulário embutido na página.
Fluxo depois de configurado:
supabase/schema.sql (cria a tabela de
e-mails autorizados e já deixa [email protected] e
[email protected] liberados para o teste inicial)..env.example para .env.local e preencha com as chaves do projeto (Project
Settings → API): NEXT_PUBLIC_SUPABASE_URL, NEXT_PUBLIC_SUPABASE_ANON_KEY,
SUPABASE_SERVICE_ROLE_KEY.diretoria_emails_autorizados
(Table Editor do Supabase, ou insert into diretoria_emails_autorizados (email) values ('[email protected]'); no SQL Editor). Só depois disso a pessoa consegue se cadastrar.src/app/ — páginas (Painel, Classificação, Estatísticas, Camisa Branca, Diretoria).src/data/etapas.ts e src/data/etapas/*.ts — dados brutos das etapas (fonte da verdade).src/lib/scoring.ts — pontuação oficial do campeonato (regulamento 2026).src/lib/equalizacao.ts — pontuação de equalização usada só na Diretoria.src/components/, src/context/ — UI compartilhada e estado (categoria/turno, sessão).Qualquer provedor compatível com Next.js funciona; o recomendado é a Vercel (import do repositório do GitHub, zero config). Cada push na branch de produção gera um novo deploy no mesmo domínio.