StudyTrack

Em produçãoProduto SaaS B2B · cofundadorout/2025 — hoje
Plataforma white-label que cursinhos e instituições de ensino usam como portal próprio: banco de questões, simulados, correção de redação e gamificação, com a marca de cada escola.

O contexto

Cursinhos e escolas preparatórias competem com plataformas nacionais que têm marca própria e nenhum vínculo com a instituição. O aluno estuda no app de outra empresa, e a escola não vê nada do que acontece ali. A StudyTrack inverte isso: a plataforma leva a marca da escola, e o dado volta para a coordenação.

01O produto

O que as duas pontas enxergam.

A escola e o aluno usam o mesmo sistema por motivos diferentes. Abaixo, as telas reais — capturadas de uma instância de demonstração, sem dado de aluno.
Painel do gestor: alunos ativos, questões respondidas, evolução da turma, ponto forte e ponto fraco por disciplina, ranking de engajamento e adoção de videoaulas

Painel da escola

O que a coordenação vê: volume, evolução, onde a turma trava e quem está parando de aparecer.

Painel do aluno com sequência de dias, questões respondidas, simulados, nível, missão do dia e barra de progresso de gamificação

Portal do aluno

Do outro lado, o aluno vê progresso, sequência, missão do dia e o quanto falta para o próximo nível.

Tela de indicadores de redação da StudyTrack

Redações

Envio, correção por competência e histórico de evolução por aluno.

Página pública da StudyTrack apresentando a plataforma para instituições de ensino

Site do produto

A ponta comercial: é por aqui que uma instituição descobre a plataforma e pede demonstração.

O problema

Coordenação pedagógica descobre que um aluno despencou quando a prova chega — tarde demais para intervir. A escola decide no escuro porque o dado existe espalhado em planilha, caderno e cabeça de professor.

A solução

Um portal por instituição, com a identidade visual dela, onde o desempenho de cada aluno vira métrica em tempo real: evolução por disciplina, lacunas identificadas, redações corrigidas por competência e relatórios que a gestão consegue ler sem ser analista de dados.

O meu papel

Cofundador e desenvolvedor. Divido a construção do produto com o outro fundador — frontend e backend, do schema ao deploy. Também respondo pelo suporte direto às instituições, o que muda como eu escrevo código: cada decisão tem alguém do outro lado na segunda de manhã.

  • 71rotas no app
  • ~163klinhas de código
  • 1.610commits no produto
  • 5.000+questões catalogadas

Stack

  • Next.js 16
  • React 19
  • TypeScript
  • Tailwind 4
  • Python
  • Flask
  • Supabase
  • PostgreSQL
  • Fly.io
  • Vercel
02Arquitetura

Como o sistema está montado.

  1. Portal por instituição

    Cada escola tem rota própria, identidade visual própria e base de alunos isolada. O mesmo código serve todas — o que muda é configuração, não fork.

  2. Frontend

    Next.js com React Server Components onde faz sentido e cliente onde é interativo. O app tem 71 rotas entre portal do aluno, painel da escola e administração interna.

  3. Backend

    Flask organizado em blueprints por domínio — aluno, parceiro, administração, integrações — com a lógica em services, separada da camada HTTP.

  4. Dados e autenticação

    Supabase sobre PostgreSQL, com autenticação e storage no mesmo lugar.

  5. Infraestrutura

    Frontend na Vercel, backend em container no Fly.io, tarefas agendadas por APScheduler.

03Decisões difíceis

Os quatro problemas que deram trabalho.

Nenhum deles é sobre escolher framework. Todos apareceram depois que o produto tinha gente usando.

Isolar instituições sem duplicar o produto

Cada escola precisa enxergar só os próprios alunos, com a própria marca, sem que isso vire uma cópia do sistema por cliente. A decisão foi tratar a instituição como parâmetro em todas as camadas — rota, consulta e permissão — para que adicionar uma escola seja cadastro, não deploy.

Corrigir redação manuscrita

Professor de cursinho gasta horas corrigindo redação à mão. O fluxo aceita a foto da folha, extrai o texto e devolve avaliação por competência do ENEM, com feedback estruturado — e o professor revisa em vez de começar do zero.

Gamificar sem distorcer o dado

XP, streak, níveis e ranking aumentam engajamento, mas criam um sistema de pontuação que várias ações disputam ao mesmo tempo. Contagem concorrente é a classe de bug mais fácil de não perceber: ninguém reclama de ponto a mais. Isso mudou como eu trato escrita concorrente no banco.

Relatório que a coordenação lê

Dado bruto não convence diretor. A plataforma gera relatórios em PDF com gráficos, evolução por disciplina e recorte por turma, montados no backend com ReportLab e matplotlib — feitos para sair da tela e virar reunião.

Próximo projetoAssociação Branco Zanol