🐾 MeuPet: criando um sistema de gestão veterinária com IA, Supabase e Render
- #PHP
- #Inteligência Artificial (IA)
- #Supabase
CodeVerse2026 — Artigo #20
🧑💻 Fala Galera Dev! 👋
Na última semana resolvi encarar mais um projeto e criar algo diferente do que vinha desenvolvendo até então. Dessa vez nasceu o MeuPet, um sistema de gestão para clínicas veterinárias pensado para reunir em um único lugar boa parte da rotina de uma clínica, desde o cadastro do responsável e seus pets até consultas, prontuários, receitas, financeiro e histórico do paciente.
A ideia era criar uma aplicação simples de utilizar, mas que não fosse apenas uma demonstração visual. Eu queria chegar ao final com um sistema realmente funcional, publicado na internet, conectado a banco de dados e já estruturado pensando em algo maior no futuro. E foi também uma oportunidade de testar novas tecnologias e uma forma diferente de desenvolver.
🧠 Antes do código, veio o PRD
Como já fiz em outros projetos, não começei simplesmente abrindo o editor e programando. Primeiro estruturei um PRD (Product Requirements Document) descrevendo o que eu queria que o MeuPet tivesse, quais seriam os módulos, os usuários, os fluxos e as principais regras do sistema. Quanto melhor eu conseguia explicar o projeto, melhor também conseguia orientar a IA durante o desenvolvimento.
Esse foi e continua sendo um aprendizado importante. Quando usamos IA para programação, não basta pedir "crie um sistema para clínica veterinária". É preciso explicar contexto, comportamento esperado, regras, relacionamentos entre os dados e o que deve acontecer em cada fluxo. O PRD acabou funcionando como um mapa para todo o restante do projeto. Conversando com a Ia de texto , e pedindo para ela criar um PRD, passando os requisitos técnicos e tecnologias que eu queria, consegui definir diversos pontos, e até mesmo a própria IA, me deu diversos insights que eu não tinha pensando antes, como o modo financeiro, etc.
🤖 Testando o GPT-5.6 Sol no desenvolvimento
Também aproveitei o projeto para testar o GPT-5.6 Sol em um desenvolvimento mais completo. Entreguei o PRD como base e utilizei a IA para fazer boa parte do trabalho pesado de implementação. O resultado me surpreendeu positivamente, principalmente pela velocidade com que consegui sair de uma especificação para uma aplicação funcional. A própria OpenAI posiciona o Sol como seu modelo principal da família GPT-5.6 para trabalhos complexos, incluindo programação.
Isso não significa que escrevi um prompt e magicamente apareceu um software perfeito. Precisei refazer alguns prompts, corrigir código, revisar comportamentos que não ficaram como imaginei e principalmente olhar novamente algumas partes relacionadas à segurança. A IA acelerou bastante o desenvolvimento, mas a responsabilidade de conferir se aquilo realmente fazia sentido continuou sendo minha.
🐶 Do responsável ao paciente
Uma das bases do sistema é o relacionamento entre responsáveis e animais. Posso cadastrar uma pessoa e depois vincular um ou vários pets a ela. A partir daí, cada animal passa a possuir sua própria ficha dentro do sistema, mantendo suas informações e permitindo acompanhar o que aconteceu ao longo dos atendimentos.
Na página do pet concentrei informações como espécie, sexo, peso, responsável e outros dados cadastrais. Também existem áreas destinadas ao histórico, exames, vacinas, arquivos e financeiro. A intenção foi tentar enxergar o animal como o paciente da clínica e manter as informações relacionadas a ele organizadas em um único lugar.
🩺 O atendimento foi uma das partes mais importantes
Não queria que o sistema servisse apenas para cadastro. Por isso desenvolvi um fluxo de atendimento no qual o profissional consegue registrar motivo da consulta, relato do responsável, anamnese, peso, temperatura, frequência cardíaca, exame físico, suspeita clínica, diagnóstico, conduta e outras informações importantes daquela consulta.
Quando o atendimento é finalizado, essas informações ficam relacionadas ao paciente e podem ser consultadas posteriormente. Dessa forma, uma nova consulta não começa do zero. O profissional consegue consultar o histórico daquele animal e acompanhar sua evolução ao longo do tempo.
📄 Do sistema para o documento
Também quis levar as informações cadastradas para fora da interface. O MeuPet consegue gerar documentos para impressão, como o relatório do atendimento veterinário e a receita veterinária. Parece um detalhe pequeno quando olhamos apenas pelo lado da programação, mas comecei a perceber que são justamente esses pequenos fluxos que tornam um sistema mais próximo de uma situação real.
O relatório organiza os dados do paciente, responsável, veterinário e informações registradas durante o atendimento. Já a receita apresenta a prescrição e disponibiliza o espaço necessário para assinatura e carimbo do profissional. Tudo aproveitando dados que já existem dentro da aplicação, evitando ter que digitá-los novamente.
📊 Uma clínica não vive apenas de consultas
Outro ponto que procurei considerar foi a gestão. No dashboard é possível ter uma visão do que está acontecendo na clínica, acompanhando consultas do dia, pacientes aguardando, atendimentos realizados, faturamento e valores em aberto. Também deixei atalhos para algumas das ações utilizadas com maior frequência.
O sistema ainda possui áreas para agenda, responsáveis e pets, atendimentos, financeiro, relatórios, cadastros, configurações e segurança. Ainda existe bastante coisa que quero melhorar, mas procurei criar desde o início uma estrutura que pudesse crescer sem precisar reconstruir todo o projeto depois.
☁️ Supabase e Render: duas ferramentas novas no caminho
Outra parte interessante desse projeto aconteceu fora do código. Eu queria experimentar uma estrutura diferente das que normalmente utilizo e decidi trabalhar com Supabase e Render. Com isso, precisei aprender na prática como configurar os serviços, conectar a aplicação, trabalhar com variáveis de ambiente e finalmente colocar tudo funcionando na internet.
O Supabase fornece uma estrutura baseada em PostgreSQL e também possui recursos como autenticação, storage e políticas de acesso. Já no Render fiz o deploy da aplicação a partir do código versionado no GitHub, sim subi o código no github, permiti acesso dentro do Render e consegui rodar, mesmo com o projeto no modo privado. Esse fluxo é suportado nativamente pela plataforma, que consegue construir e publicar uma aplicação a partir de um repositório Git conectado.
Foi justamente uma das partes que mais gostei do projeto. Antes dele eu não tinha experiência prática suficiente com essas ferramentas. Então precisei pesquisar, testar, errar configuração, entender o problema e tentar novamente. No final, além de ter o MeuPet publicado, ganhei experiência com duas tecnologias que agora posso utilizar em outros projetos.
🏢 Mas afinal, o que significa transformar isso em SaaS?
Para quem está começando, SaaS significa Software as a Service, ou Software como Serviço. Em vez de desenvolver uma instalação diferente do sistema para cada cliente, a ideia é manter uma aplicação disponível pela internet e permitir que diferentes clientes utilizem aquele serviço. É o modelo encontrado em muitos softwares que acessamos diretamente pelo navegador.
Pensando no MeuPet, isso significa que futuramente eu poderia ter a Clínica A, Clínica B e Clínica C utilizando a mesma aplicação. Cada uma teria seus usuários, configurações e informações, mas nenhuma poderia acessar os dados das demais. É aí que entra outro conceito importante que comecei a considerar desde a arquitetura do projeto: multitenancy.
Inclusive aqui esta um link para você poder acessar a clinica e testar, e como observação, como estou utilizando plano gratuito do Render, ele demora de 30 a 60 segundos para iniciar a startar a aplicação.
https://meupet-prjk.onrender.com/login
- Login: veterinario.teste@gmail.com
- Senha: Veterinario.teste
🏘️ Multitenant explicado de maneira simples
Para quem não entende muito bem alguns dos termos que usei neste artigo, vou explicar de uma maneira mais simples. Gosto de imaginar um sistema multitenant como um prédio. Existe uma única estrutura, mas dentro dela existem vários apartamentos. Cada morador entra pela mesma portaria, porém possui acesso apenas ao seu apartamento. No software acontece algo parecido: existe uma aplicação, mas cada empresa representa um tenant, ou inquilino.
No MeuPet, a ideia é que cada clínica seja um tenant. Por isso também existe uma camada de administração superior para permitir o gerenciamento das clínicas e seus usuários. É uma base para que o projeto deixe de ser apenas "o sistema de uma clínica" e possa, no futuro, atender várias clínicas mantendo a separação lógica dos dados de cada uma.
E aqui existe uma observação importante: ter cadastro de várias clínicas não torna automaticamente uma aplicação multitenant segura. Isolamento de dados, autorização e políticas de acesso precisam ser tratados corretamente. É justamente uma das áreas que pretendo continuar revisando e testando antes de pensar em qualquer utilização comercial.
🔐 Funcionar não significa estar terminado
Depois que as principais funcionalidades estavam funcionando, voltei para algumas partes do sistema pensando em segurança. Esse é um ponto em que procuro tomar cada vez mais cuidado nos projetos, principalmente quando existem autenticação, informações de clientes e separação de dados entre diferentes usuários.
Foi uma das etapas em que não quis simplesmente confiar no código produzido pela IA. Revisei fluxos e fiz ajustes, mas ainda considero que uma aplicação desse tipo precisaria passar por uma revisão de segurança muito mais profunda antes de entrar em produção com dados reais. Um projeto funcionar tecnicamente é diferente de estar pronto para operar comercialmente.
Sei que ainda tenho que melhorar muita coisa, e se algum dia quiser disponibilizar como produto SAAS devo fazer muitos testes dessa plataforma, tanto na parte de segurança quanto de estresse para ver se aguenta. atualmente esta em hospedagem gratuita.
🚀 Uma semana, muitas coisas novas
O que mais gostei nesse projeto não foi apenas ter conseguido criar o MeuPet. Em uma única aplicação precisei pensar em requisitos, banco de dados, interface, autenticação, prontuários, documentos, financeiro, deploy, arquitetura multitenant e até em como transformar futuramente aquele projeto em um serviço.
E novamente percebi algo que vem se repetindo durante o CodeVerse: cada projeto acaba me obrigando a aprender alguma coisa que eu não tinha planejado aprender. Dessa vez foram principalmente Supabase, Render e uma experiência muito mais intensa de desenvolvimento utilizando IA como apoio durante praticamente todo o processo.
💭 IA fez mais rápido. Mas eu ainda precisava saber o que queria.
Talvez esse tenha sido o principal aprendizado desse projeto. A IA conseguiu fazer muito trabalho pesado e reduziu bastante o tempo necessário para chegar a uma primeira versão. Mas quanto mais avançava, mais percebia que precisava saber explicar o problema, identificar quando alguma coisa estava errada e decidir qual deveria ser o próximo passo.
Por isso continuo acreditando que aprender programação continua sendo importante mesmo em uma época em que conseguimos gerar cada vez mais código com IA. Talvez não precisemos escrever manualmente cada linha como antes, mas precisamos entender sistemas, arquitetura, segurança, dados e principalmente saber o que estamos tentando construir.
🐾 Mais um projeto, mais uma barreira quebrada
O MeuPet ainda não é perfeito e certamente existem coisas que quero melhorar. Mas hoje ele está funcionando, publicado e já possui uma estrutura sobre a qual posso continuar construindo. Para mim, isso vale muito mais do que deixar um projeto parado esperando chegar naquele estado de perfeição que provavelmente nunca chegará.
Mais um projeto concluído, duas ferramentas novas aprendidas, alguns erros pelo caminho e muita coisa que agora faz parte da minha experiência. É exatamente por isso que continuo com o CodeVerse2026:
Não apenas para mostrar o resultado final, mas para registrar tudo aquilo que precisei aprender para conseguir chegar até ele. 🚀
Se esse artigo te ajudou de alguma maneira, curte, compartilhe para que alcance mais pessoas. Gratidão por lido até o fim, e nos vemos nos próximos artigos!
- Segue lá no LinkedIn
- Segue lá no GitHub
- Link do Projeto: https://meupet-prjk.onrender.com/login
Como ultima observação. Com estou utilizando o Render no plano gratuito ele deixa minha aplicação inativa, então quando clicar no link ele deve demorar uns 30 a 60 segundos para iniciar a aplicação.



