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.

- 9
- 6
- 7 dias
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.
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.