Pular para o conteúdo principal

CertMe

SaaS · Formações e eventos

em produção

O certificado se emite sozinho

O certificado se emite sozinho: check-in por QR Code, feedback do participante e o PDF verificável sai na hora. Sem planilha, sem PDF manual.

< 1 min

do check-in ao certificado

50

certificados grátis por mês

R$ 49

por mês no plano pago

O problema

Quem dá formação conhece o domingo à noite: a lista de presença no papel virou planilha, a planilha virou mala direta, e cada certificado sai à mão em um editor de PDF. Quanto melhor foi a turma, pior é a noite.

E o certificado que sai desse processo não prova nada. É um PDF que qualquer pessoa edita. Quando o RH ou a secretaria pede comprovação, não existe nada do outro lado para confirmar que aquele documento é real.

O que o produto faz

  • O formador cria a formação e recebe um QR Code de check-in
  • O participante entra pelo navegador, sem instalar aplicativo nenhum
  • O feedback é coletado no mesmo fluxo, enquanto a formação ainda está fresca
  • O certificado é gerado automaticamente assim que o feedback entra
  • Cada certificado tem uma página pública de validação por hash
  • API pública e portal do desenvolvedor para quem quer integrar ao próprio sistema
  • Conformidade com a LGPD desde o desenho do fluxo

Arquitetura e decisões

Aplicações

  • React 19
  • Vite
  • TypeScript strict
  • Radix UI

Sites

  • Astro
  • Tailwind CSS
  • Storybook

Back-end

  • Firebase Functions
  • Node.js 22
  • Zod

Dados

  • Cloud Firestore
  • Cloud Storage
  • Firebase Auth

Documentos

  • Puppeteer
  • Chromium empacotado

Operação

  • Stripe
  • Resend
  • reCAPTCHA Enterprise
  • Turborepo

A emissão é um gatilho, não um botão

Não existe tela de 'emitir certificados'. Uma Cloud Function escuta a criação do feedback no Firestore e dispara a renderização. O formador nunca precisa lembrar de fazer nada — que é a definição de resolvido, e a razão de o produto se chamar assim.

PDF renderizado no servidor, com o Chromium empacotado

O certificado é HTML renderizado por Puppeteer com um build de Chromium enxuto o bastante para caber no limite da Cloud Function. Isso deixa o layout do certificado ser CSS — dá para mudar o desenho sem tocar em código de geração de documento.

Verificação pública por hash, sem login

Cada certificado tem um endereço público que qualquer pessoa abre para confirmar quem emitiu, para quem e quando. É o que separa um comprovante de um PDF bonito, e não custa nada para quem valida.

Contratos em Zod compartilhados pelo monorepo

Os tipos de domínio vivem em um pacote único e são validados em runtime nas duas pontas. Em um fluxo onde o dado atravessa navegador, função e storage antes de virar documento assinado, tipagem só em tempo de compilação não é suficiente.

Onde está hoje

Em produção em quatro superfícies: site, aplicação do participante, painel do gestor e portal do desenvolvedor com a API pública. Infraestrutura no Google Cloud, região de São Paulo.

Ver funcionando em certme.pro (abre em nova aba)

Precisa de algo assim na sua operação?

Se você tem escola, comece pelo diagnóstico gratuito para entender o momento atual. Se é empresa ou startup, chame no WhatsApp e me conte o contexto.

Quer ver os outros? Volte para a lista de produtos