Voltar ao portfolio

Plataforma de Gestão e Acompanhamento de Treinamento para Competições Profissionais

2026Cliente: São Paulo Skills (Voluntário)

Plataforma de Gestão e Acompanhamento de Treinamento para Competições Profissionais

Plataforma web completa para gestão de treinamento de competidores em competições técnico-profissionais. O sistema permite que avaliadores lancem notas, acompanhem a evolução dos competidores por simulado, controlem tempos de prova e gerem relatórios detalhados de desempenho.

Arquitetura: Clean Architecture (Domain-Driven Design) com separação em camadas -- Domain, Application, Infrastructure e Presentation.

Backend

  • Python 3.11 com FastAPI (API REST assíncrona)

  • SQLAlchemy 2.0 (ORM async) + Alembic (migrations)

  • PostgreSQL via asyncpg

  • Pydantic v2 para validação de dados e schemas

  • Autenticação JWT (access + refresh tokens)

  • Criptografia de campos sensíveis (CPF, telefone) com Fernet (conformidade LGPD)

  • Middleware de rate limiting, logging estruturado (JSON) e tratamento de erros

  • Qualidade de código: BlackRuffmypyBanditpre-commit hooks

  • Testes automatizados com pytest + pytest-asyncio

Frontend

  • React 18 com TypeScript

  • Vite (build tool)

  • Tailwind CSS (estilização responsiva com dark mode)

  • Zustand (gerenciamento de estado)

  • React Query (cache e sincronização de dados com o servidor)

  • React Hook Form + Zod (formulários com validação tipada)

  • Recharts (gráficos interativos de evolução de notas e tempos)

  • jsPDF + html2canvas (geração de relatórios em PDF)

  • Axios (cliente HTTP)

Infraestrutura / DevOps

  • Docker + Docker Compose (ambiente de desenvolvimento containerizado)

  • Apache (servidor de produção com proxy reverso + SSL/HTTPS)

  • Let's Encrypt (certificados SSL)

  • Deploy via SCP + systemd (serviço uvicorn em produção)

Funcionalidades Principais

  • Gestão de modalidades, competidores e inscrições

  • Criação de simulados com critérios e subcritérios de avaliação personalizáveis

  • Lançamento de notas individual e em massa (bulk grading)

  • Acompanhamento de tempo por competidor com gráfico de evolução

  • Dashboard interativo com métricas de desempenho, média geral e evolução por simulado

  • Definição de metas de tempo e pontuação com indicadores visuais

  • Filtros por modalidade e seleção de competidores nos gráficos

  • Relatórios de presença e desempenho exportáveis em PDF

  • Sistema de permissões por perfil (Administrador, Avaliador, Competidor)

  • Criptografia de dados pessoais sensíveis em conformidade com a LGPD

Galeria

Tech Stack

Python
FastAPI
SQLAlchemy
Pydantic
React
TypeScript
Tailwind CSS
PostgreSQL