GridLogic

SaaS de campeonatos de kart que importa resultados de PDF, planilha ou imagem e calcula classificação, punições e estatísticas.

Campeonato amador de kart costuma ser organizado em planilha: alguém copia os resultados do PDF da cronometragem, aplica as punições à mão e refaz a classificação a cada etapa. O GridLogic automatiza esse caminho, do arquivo de resultados à tabela publicada.

O que ele faz

  • Organiza campeonatos com categorias, etapas, equipes e pilotos, cada um com página pública.
  • Importa resultados de CSV, planilha, PDF ou imagem: detecta o formato, lê, valida, mostra para revisão e só então publica.
  • Aplica punições de cinco tipos (tempo com reordenação, tempo fixo, perda de pontos, perda de posições no grid e desclassificação), com prévia antes de confirmar.
  • Calcula a classificação com descarte dos piores resultados, a classificação por equipes e estatísticas como vitórias, pódios, voltas mais rápidas e consistência.
  • Faz o sorteio público de karts com um hash de auditoria, para qualquer um conferir que o resultado não foi mexido.

Decisões que fizeram diferença

A leitura de arquivos é um serviço à parte. O parsing fica num serviço Python com FastAPI, chamado pela API NestJS por HTTP. Python tem as melhores ferramentas para isso: pdfplumber para PDF, pandas para planilhas e Tesseract para OCR de imagens.

Determinístico antes de inteligente. Os resultados são lidos por regras e passam por um validador, sem modelo de linguagem no meio. Num campeonato, um tempo inventado é pior que um arquivo recusado.

Descarte simples de explicar. Para descartar resultados, os pontos de cada piloto são ordenados e os N piores saem. É a regra que os regulamentos já descrevem, então qualquer piloto consegue refazer a conta.

Onde está

Publicado, com interface em português, inglês e espanhol. O live timing e a cobrança dos planos ainda são simulados. Em volta dele cresceram ferramentas menores do mesmo ecossistema: PitWall, LapCompare e RaceAnalytics.

status
lançado
ano
2026
stack
  • next.js
  • nestjs
  • typeorm
  • postgresql
  • fastapi
  • tesseract ocr
← cd ..