Construa um micro SaaS em apenas um fim de semana — e ele já pode cobrar R$29/mês
Aprenda a construir do zero uma ferramenta de coleta de depoimentos com Lovable e Supabase — com página pública, painel de gestão e pronta para cobrar. Um micro SaaS real em um fim de semana.
Sumário do artigo
- O que você vai construir
- Por que isso é um micro SaaS de verdade
- Passo a passo
- 1\. Crie o projeto no Lovable
- 2\. Configure o Supabase
- 3\. Habilite o Storage para fotos
- 4\. Proteja o painel com autenticação
- 5\. Crie a tabela de perfis
- 6\. Ajuste o mural para impressionar
- O que esse projeto já tem para cobrar
- Próximos passos para escalar
- Conclusão

Categoria: SaaS / Vibe Coding Nível: Intermediário Tempo de leitura: ~10 min
Meta description: Aprenda a construir do zero uma ferramenta de coleta de depoimentos com Lovable e Supabase — com página pública, painel de gestão e pronta para cobrar. Um micro SaaS real em um fim de semana.
Todo mundo fala em lançar um SaaS. Mas a maioria trava na parte de "por onde começo?".
A resposta que ninguém te dá: começa pequeno de verdade. Não um clone do Notion. Não uma plataforma de cursos. Um micro SaaS resolve um problema específico, tem uma tela ou duas, e já pode cobrar desde o primeiro usuário.
Neste tutorial você vai construir um coletor de depoimentos — uma ferramenta que qualquer freelancer, agência ou criador de conteúdo pagaria para ter. O cliente envia o depoimento via link público. O dono vê tudo num painel. E tem uma página pública com o "mural de amor" pronto para mostrar.
Simples. Útil. Vendável.
O que você vai construir
Página pública de coleta: o cliente acessa um link, preenche nome, foto (opcional), avaliação e texto
Painel privado: o dono vê todos os depoimentos, aprova ou rejeita cada um
Mural público: página com todos os depoimentos aprovados, pronta para compartilhar ou embutir em qualquer site
Autenticação: login simples para o dono acessar o painel
Stack: Lovable para a interface e lógica, Supabase para banco, autenticação e storage de imagens.
Por que isso é um micro SaaS de verdade
Ferramentas como Testimonial.to cobram a partir de US$ 25/mês fazendo exatamente isso. O mercado existe, a dor é real, e você pode construir uma versão funcional em um fim de semana.
O que torna esse projeto intermediário (e não básico):
Autenticação de usuário com Supabase Auth
Upload de imagem (foto do cliente) no Supabase Storage
Controle de status (pendente / aprovado / rejeitado)
Duas rotas públicas + uma rota privada protegida
Lógica de aprovação que reflete em tempo real no mural
Passo a passo
1. Crie o projeto no Lovable
Acesse lovable.dev e inicie um novo projeto. Use este prompt de abertura:
Crie um micro SaaS de coleta de depoimentos chamado "Depoix".
O produto tem três partes:
1. Página pública de coleta (/coleta/:slug)
- Formulário com: nome, cargo/empresa, texto do depoimento (máx. 300 chars),
avaliação de 1 a 5 estrelas, e upload opcional de foto
- Após envio, mostra mensagem de agradecimento
- Sem necessidade de login para quem envia
2. Painel privado (/painel) — protegido por login
- Lista todos os depoimentos recebidos com status: pendente, aprovado, rejeitado
- Botões para aprovar ou rejeitar cada depoimento
- Mostra data de envio, nome, texto e avaliação
3. Mural público (/mural/:slug)
- Exibe todos os depoimentos com status "aprovado" em cards bonitos
- Ordena pelos de maior avaliação primeiro
- Design clean, fundo branco, adequado para ser linkado em portfolio
Use Supabase como backend. Crie as tabelas necessárias.
O Lovable vai gerar a estrutura completa. Revise e ajuste o visual se quiser antes de continuar.
2. Configure o Supabase
Conecte seu projeto Supabase no Lovable em Settings → Integrations → Supabase.
O Lovable vai criar as tabelas automaticamente, mas confirme que a tabela depoimentos tem estas colunas:
sql
id uuid primary key default gen_random_uuid()
slug text not null -- identifica qual "conta" recebeu o depoimento
nome text not null
cargo_empresa text
texto text not null
avaliacao int check (avaliacao between 1 and 5)
foto_url text
status text default 'pendente' -- pendente | aprovado | rejeitado
criado_em timestamp default now()
Execute no SQL Editor do Supabase caso precise criar manualmente:
sql
create table depoimentos (
id uuid primary key default gen_random_uuid(),
slug text not null,
nome text not null,
cargo_empresa text,
texto text not null,
avaliacao int check (avaliacao between 1 and 5),
foto_url text,
status text default 'pendente',
criado_em timestamp default now()
);
3. Habilite o Storage para fotos
No painel do Supabase, vá em Storage → New Bucket e crie um bucket chamado fotos-depoimentos. Deixe como público (para que as imagens apareçam no mural sem autenticação).
Volte ao Lovable e instrua:
No formulário de coleta, quando o usuário selecionar uma foto,
faça o upload para o bucket "fotos-depoimentos" do Supabase Storage.
Salve a URL pública retornada no campo foto_url do depoimento.
O upload deve acontecer antes de salvar o formulário.
4. Proteja o painel com autenticação
O Lovable já usa Supabase Auth por padrão quando você pede uma rota protegida. Mas refine com este prompt:
A rota /painel deve:
- Redirecionar para /login se o usuário não estiver autenticado
- Após login, mostrar apenas os depoimentos cujo slug pertence ao usuário logado
- O slug do usuário deve ser gerado automaticamente no primeiro login e salvo no perfil
- Adicione um botão "Copiar link de coleta" e "Copiar link do mural" no topo do painel
Isso garante que cada usuário veja só os seus depoimentos — o mínimo para um SaaS multi-tenant funcional.
5. Crie a tabela de perfis
Para associar cada usuário ao seu slug, você precisa de uma tabela extra:
sql
create table perfis (
id uuid primary key references auth.users(id),
slug text unique not null
);
-- Gera slug automático quando usuário se cadastra
create or replace function criar_perfil_novo_usuario()
returns trigger as $$
begin
insert into perfis (id, slug)
values (new.id, lower(substring(new.email from 1 for 8) || '-' || substring(gen_random_uuid()::text from 1 for 4)));
return new;
end;
$$ language plpgsql security definer;
create trigger on_novo_usuario
after insert on auth.users
for each row execute procedure criar_perfil_novo_usuario();
Instrua o Lovable a buscar o slug do perfil logado ao carregar o painel.
6. Ajuste o mural para impressionar
O mural é o que o usuário vai mostrar para os clientes dele — capricha. Diga ao Lovable:
Melhore o visual do mural público:
- Cards com sombra suave e borda arredondada
- Foto do cliente em círculo no canto superior esquerdo do card
- Estrelas coloridas em amarelo
- Nome em negrito, cargo em cinza abaixo
- Texto do depoimento em itálico
- Responsivo para mobile
- Adicione um rodapé discreto: "Coletado com Depoix"
Esse rodapé é marketing passivo — quem ver o mural vai querer a ferramenta também.
O que esse projeto já tem para cobrar
Com o que você construiu, dá para lançar com uma proposta simples:
PlanoPreçoLimiteGrátisR$ 010 depoimentos, sem fotoStarterR$ 29/mês100 depoimentos, com fotoProR$ 79/mêsilimitado + domínio próprio
A lógica de limite por plano você adiciona depois — o importante agora é ter o produto funcionando e validar se alguém quer pagar.
Próximos passos para escalar
Integração com Stripe ou Hotmart para cobrar os planos
Widget embed que o usuário cola no próprio site (um
<iframe>já resolve)Importação de depoimentos do Google via scraping da página de avaliações
E-mail de notificação quando um novo depoimento chegar
Conclusão
Esse micro SaaS não é um exercício teórico — é um produto que você pode lançar essa semana, mostrar para freelancers e agências que conhece, e começar a validar se as pessoas pagam por isso.
O segredo do micro SaaS não é a ideia perfeita. É lançar rápido, cobrar cedo e ajustar com base em quem realmente usa.
Vibe coding com Lovable e Supabase torna isso acessível para qualquer pessoa — com ou sem experiência em código.
Não perca a próxima edição.
Toda quinta, 9h. Direto na sua caixa.
- Ferramentas que economizam horas do seu trabalho
- Agentes e automações que funcionam
- Bastidores do que estamos construindo