pt/en

Concurse

Converte editais de concurso em trilhas de estudo geradas por IA.

Papel
Fundador · AI Engineer · Solo dev
Tipo
SaaS · Edtech com IA
Ano
2026
Situação
Em operação
Concurse

[ O projeto ]

Plataforma gamificada de estudo para concursos públicos. Desenvolvimento solo, end-to-end: produto, modelagem de dados, backend, frontend, pipeline de IA, pagamento e aquisição. Multitenancy com Row Level Security em todas as tabelas e CI com typecheck e testes automatizados.

[ stack ]

  • Next.js 16
  • React 19
  • TypeScript
  • Tailwind v4
  • Supabase
  • Postgres + RLS
  • DeepSeek
  • ts-fsrs
  • pdf-parse
  • Zod
  • AbacatePay
  • Meta CAPI
  • Vercel
  • GitHub Actions

[ Decisões técnicas ]

  1. 01

    Pipeline de IA que roda offline, em workers de linha de comando, nunca no runtime do usuário: extrai a estrutura do edital direto do PDF, gera questões no estilo da banca (Certo/Errado para Cebraspe, múltipla escolha para FGV) e valida em lotes de dez antes de publicar. Custo de centavos por edital e nenhuma espera por LLM.

  2. 02

    O system prompt é mantido estável entre chamadas de propósito, para o prefixo bater no cache de contexto do DeepSeek e sair por cerca de um décimo do preço. Cada chamada tem custo estimado e registrado.

  3. 03

    Curadoria como máquina de estados — rascunho, validada, publicada ou reprovada — com veredito e motivo gravados para auditoria. Toda saída do modelo passa por schema Zod e invariantes estruturais antes de tocar o banco.

  4. 04

    Deduplicação por similaridade de Jaccard sobre tokens normalizados, com limiar de 0,85. Escolha deliberada: resolve o problema real do MVP sem infraestrutura de embeddings, que entra quando o volume justificar.

  5. 05

    Motor pedagógico com repetição espaçada (FSRS) e um session mixer que monta cada sessão de quinze questões em 35% de revisão vencida, 55% de conteúdo novo e 10% de desafio, com teto de 40% por tópico e intercalação que impede duas questões seguidas do mesmo assunto.

  6. 06

    Progressão em ondas: a onda seguinte só destrava quando todos os tópicos da atual atingem o domínio mínimo — e volta a trancar se o domínio decai.

  7. 07

    Previsão de nota com encolhimento bayesiano e prior pessimista, modelando a regra real da Cebraspe: 120 questões em três blocos, erro anulando acerto, líquido com piso zero por bloco e eliminação abaixo do mínimo. Inflar o número destruiria a confiança de quem estuda.

  8. 08

    Sobre os mesmos workers rodam também flashcards, leitura gerada, simulado, lei seca, ofensiva e ranking — um único pipeline alimentando seis formatos de estudo.

  9. 09

    Assinaturas com webhooks idempotentes: decisão isolada como função pura e testável, validação HMAC, tabela de eventos com chave única e parsing tolerante a variações de payload do gateway.

  10. 10

    Tracking de aquisição server-side com deduplicação browser/servidor por event_id, rota first-party resistente a adblocker, PII hasheada em SHA-256 e evento de compra originado apenas no webhook — sem conversão falsa.