Ficha do projeto
01 / 03Sistema da equipe de atletismo da Poli-USP
Poliatletas
A equipe de atletismo da Poli-USP usa o sistema para registrar competições, resultados, recordes e treinos, no lugar das planilhas que se perdiam a cada temporada. São mais de cem pessoas entre atletas e comissão técnica, com histórico auditável e rankings públicos.
Construí o Poliatletas para reunir a operação da equipe em um modelo que entende modalidades, marcas, elegibilidade e histórico. O backend atende tanto as páginas públicas de atletas e rankings quanto os fluxos de treinadores para resultados, competições e treinos.
- Período
- 08.2025 · atual
- Minha atuação
- Modelagem do domínio esportivo, backend NestJS, contratos da API e integração com o frontend React.
- Tecnologia
- NestJS · Fastify · PostgreSQL · Prisma · React · Redis
- Estado
- Em produção e em evolução
CÍRCULO
Comparar marcas sem apagar o contexto
Nos 100 metros, uma marca menor é melhor; no peso, vence a maior distância. Resultados ainda variam por unidade, gênero, competição, fase e validade. Tratar tudo como um número ordenável produziria recordes falsos e perderia a origem de cada marca.
SETOR
Decisões que sustentam o produto
Métrica com direção e elegibilidade
Cada modalidade define unidade canônica e direção de comparação. PBs, rankings e recordes são derivados somente de resultados elegíveis, sem alterar o histórico que os originou.
Escrita idempotente e auditável
Importações em lote evitam duplicidade; alterações sensíveis registram ator, papel, ação e metadados. Reprocessamentos recalculam derivados sem regravar o resultado original.
Concorrência explícita nos treinos
A execução offline usa Idempotency-Key, revisão de sessão e If-Match. Reenvios devolvem a mesma resposta e uma edição estrutural concorrente produz conflito em vez de sobrescrever dados silenciosamente.
Contrato único entre API e interface
A API REST é versionada e exporta OpenAPI. O frontend gera seus tipos a partir desse contrato, reduzindo divergência entre DTOs do NestJS e as telas em React.
MARCA
O que pode ser conferido
- Rankings públicos por modalidade, período e temporada, além de perfis com PBs e histórico
- Importação idempotente, recomputação de recordes e trilha de auditoria para operações sensíveis
- Mais de 250 testes distribuídos entre backend e frontend
- Produto público em poliatletas.com.br; código de aplicação mantido em repositórios privados
SÚMULA