Produto próprio

Caneta em Dia — Acompanhamento de quem usa caneta para controle de peso

Um app para o dia a dia de quem faz tratamento com caneta para controle de peso. Você acompanha a meta de proteína e de água, registra a dose e o local da aplicação em rodízio, anota peso, cintura e sintomas, e leva um relatório em PDF para a consulta. O app registra e organiza, e nunca indica nem ajusta dose.

ANO
2026 — presente
TIPO
Produto próprio · PWA + site
PAPEL
Co-Founder · Engenharia & Produto
CANETA EM DIA: o site no computador e no celular
9
módulos em vídeo no app
6
locais de aplicação no rodízio
7 dias
grátis antes da primeira cobrança

Problema.

Quem faz esse tipo de tratamento lida com muita coisa solta: quando foi a última dose, onde aplicou, quanto de proteína comeu, como se sentiu na semana. Na consulta, o que sobra é memória. E conteúdo de saúde na internet mistura informação útil com promessa e com indicação que só o médico pode fazer.

Solução.

Um PWA mobile-first com site público ao lado: página de vendas, quiz, guia com artigos para busca e o app em si. O app cobre meta diária, registro de dose com rodízio de locais, peso, cintura, sintomas, foto de evolução privada, lembrete de dose por Web Push, módulos em vídeo e relatório para levar ao médico. A decisão clínica fica com o médico, e isso está escrito no produto.

Resultado.

No ar em caneta.joaovitral.com, com assinatura (7 dias grátis, recorrência no cartão e Pix anual), login sem senha, monitoramento de erros e backup diário fora do servidor. Produto recente, sem números de uso divulgados aqui.

A parte difícil.

Todo projeto tem um ponto em que a solução óbvia não serve. Aqui foram estes.

Um app de saúde que se recusa a prescrever

O limite é parte do produto. O app só registra o que o médico prescreveu e o texto fixo diz que ele não indica nem ajusta dose. O que ele calcula é agenda e rodízio: a próxima dose cai 7 dias depois da última, e o local sugerido é o que descansou há mais tempo entre os seis disponíveis. A estimativa de proteína por IA segue a mesma linha: o prompt proíbe conselho médico e qualquer menção a remédio, dose ou dieta.

Dado de saúde sob a LGPD

Dose, peso, sintomas e fotos são dados sensíveis. O consentimento é gravado com a conta e com a versão do texto. As fotos de evolução são privadas, ficam fora da pasta pública e são reduzidas antes de sair do celular. O Sentry recebe só o técnico (a limpeza remove corpo da requisição, cookies, usuário e tokens de URL), e os cookies de analytics só entram depois do aceite, nunca dentro do app.

Login que sobrevive ao PWA instalado no iPhone

No iPhone, o app instalado não enxerga o login feito pelo link aberto no Safari ou no app de e-mail, e a pessoa ficava presa do lado de fora. A saída foi oferecer também um código de 6 dígitos no mesmo e-mail. Link e código valem 15 minutos e são de uso único, o servidor guarda só o hash, e a sessão dura 180 dias para ninguém precisar entrar toda semana.

Cobrança recorrente que não derruba o acesso por engano

O cartão é digitado no formulário do próprio Mercado Pago e só o token chega ao servidor. A assinatura recorrente começa com a primeira cobrança em 7 dias, o que funciona como período grátis, e o Pix anual é pagamento único. O webhook confere a assinatura do aviso antes de agir. Se uma cobrança é recusada, o Mercado Pago tenta de novo por até 10 dias e o acesso continua nesse meio-tempo, enquanto o Perfil pede para trocar o cartão.

Operar sozinho um produto com dado sensível

Tudo roda em uma VPS com Docker Compose, atrás de um Cloudflare Tunnel. Como o banco é um arquivo SQLite, o backup diário usa o .backup do SQLite, que é consistente com o app rodando, confere a integridade de cada cópia e envia uma versão para um bucket privado na Cloudflare R2, com expiração automática em 30 dias. Um verificador chama o endpoint de saúde a cada 5 minutos e avisa no Telegram depois de duas falhas seguidas.

O que eu fiz.

  • Em sociedade com o Marcelo, assumo a engenharia e o produto: todo o código do app e do site está nos meus commits
  • App (PWA), site público, quiz, guia com artigos e painel interno de funil
  • Assinatura com Mercado Pago: recorrência no cartão, Pix anual, webhook e tratamento de cobrança recusada
  • Login por link mágico ou código de 6 dígitos, com sessão longa
  • Estimativa de proteína por foto ou descrição com a API da Anthropic (Claude)
  • Infraestrutura: VPS com Docker Compose, Sentry, backup diário e monitoramento do site

Stack.

Next.jsReactTypeScriptSQLiteMercado PagoDockerAPI da Anthropic (Claude)

Quer algo parecido?

Este projeto é do tipo desenvolvimento de aplicativos. A partir de R$ 14.900 + R$ 590/mês. Me conta o que você precisa e respondo pessoalmente. Se preferir escrever, use o formulário.

Veja no ar.

Páginas públicas do produto, abertas a qualquer pessoa.

Produto irmão.

Mesma base e mesma regra, para outro tratamento.

Para ler.

Artigos em que este projeto aparece como exemplo.