Vibe Coding — a tua primeira app sem saber programar — 3. Descrever a tua app (mini-PRD)

17 min read min de lecture
Capítulo 03

Descrever a tua app (mini-PRD)

Capítulo 3 de 10 · 30%

Objetivos deste capítulo

  • Redigir um mini caderno de encargos
  • Priorizar as funcionalidades essenciais
  • Dar à IA uma base clara

Porquê descrever antes de gerar

A tentação é grande de abrir a ferramenta e escrever «faz-me uma app de acompanhamento de hábitos». Experimenta, e verás o problema: a IA vai preencher todos os vazios com as suas próprias escolhas. Vai decidir as cores, as funcionalidades, a estrutura — e há poucas hipóteses de as escolhas dela corresponderem ao que tinhas em mente. Vais depois passar dez mensagens a desfazer o que podias ter evitado com dois minutos de reflexão.

É todo o interesse do mini-PRD. PRD significa «Product Requirements Document», o caderno de encargos que as equipas de produto profissionais escrevem. A versão «mini» cabe numa dezena de linhas e responde a cinco perguntas: para que serve a app, quem a usa, o que faz exatamente, que aspeto tem, e sobre que base técnica. Com isso, a IA produz à primeira algo próximo da tua visão.

Há um benefício escondido: escrever o mini-PRD obriga-te a clarificar o teu próprio pensamento. Muitas ideias de apps parecem límpidas na cabeça e revelam-se vagas no papel. «Uma app para ajudar os alunos» — está bem, mas a fazer o quê, concretamente? O mini-PRD é a tua primeira ferramenta de chefe de projeto, antes mesmo do primeiro prompt.

O mini-PRD em cinco blocos

  • Objetivo: uma frase. «Uma app web para acompanhar os hábitos de trabalho diários.»
  • Utilizadores: quem a usa e em que contexto. «Alunos do ensino básico, no telemóvel, à noite.»
  • Funcionalidades: 3 a 5 ações concretas, numeradas. Não mais para uma v1.
  • Estilo: 3-4 adjetivos e uma restrição. «Minimalista, mobile-first, destaque verde, botões grandes.»
  • Técnica: mantém-te simples. «HTML/CSS/JS simples, armazenamento local, sem conta de utilizador.»

A ordem tem a sua importância: parte-se da intenção (o objetivo) para acabar na implementação (a técnica). Se não souberes o que pôr no bloco técnico, escreve simplesmente «o mais simples possível, sem base de dados nem conta de utilizador» — a IA vai perceber e escolher por ti uma base saudável.

O mini-PRD do Tom, completo

PROMPT
Quero construir uma app web: um acompanhamento de hábitos.
Utilizadores: alunos do ensino básico que querem manter rotinas de trabalho, sobretudo no telemóvel.
Funções:
1. adicionar / eliminar um hábito
2. marcar todos os dias se o hábito foi cumprido
3. ver uma série (streak) de dias consecutivos de sucesso
4. ver um mini-calendário do mês com os dias marcados
Estilo: minimalista, mobile-first, destaque verde, botões grandes fáceis de tocar.
Técnica: HTML/CSS/JS simples, armazenamento local (localStorage), sem conta de utilizador.
Constrói primeiro APENAS as funções 1 e 2. Adicionaremos o resto depois dos meus testes.

Observa a última linha: o Tom dá a visão completa, mas pede explicitamente para construir apenas as funções 1 e 2. É a combinação vencedora — a IA conhece o destino (fará escolhas coerentes com o que vem a seguir), mas o primeiro entregável permanece pequeno e testável. Validas a base, e depois pedes «adiciona agora a função 3» numa mensagem seguinte.

Especifica «armazenamento local» (localStorage) para uma v1 sem conta nem base de dados: os dados ficam no navegador do utilizador. É o mais simples para começar — o limite é que cada aparelho tem os seus próprios dados, o que é perfeito para a app do Tom.

As palavras que mudam tudo

Certos termos do teu mini-PRD têm um efeito desmesurado no resultado. «Mobile-first» diz à IA para conceber primeiro para um ecrã pequeno — crucial se os teus utilizadores estão no telemóvel. «Armazenamento local» evita toda a complexidade das contas e servidores. «Minimalista» orienta para um design sóbrio em vez de sobrecarregado. Estas palavras-chave são atalhos para decisões técnicas inteiras.

Inversamente, certas palavras desencadeiam uma complexidade que nem suspeitas. «Conta de utilizador» implica registo, login, palavras-passe, recuperação — horas de trabalho. «Notificações» implica autorizações e serviços externos. «Tempo real» (ver as alterações dos outros instantaneamente) implica um servidor permanente. Se uma destas palavras se infiltrar na tua v1, pergunta-te seriamente se pode esperar pela v2.

Descrever o estilo sem ser designer

Não precisas de vocabulário de designer para obter uma app bonita. Três técnicas simples: dá adjetivos (minimalista, caloroso, profissional, lúdico), cita uma referência conhecida («no espírito da app Notas da Apple», «sóbrio como um site de imprensa»), e especifica uma cor de destaque («destaque verde», «tons azul-noite»). A IA traduzirá estas indicações em escolhas tipográficas e visuais coerentes.

Se o primeiro resultado não te agradar, afina por comparação em vez de jargão: «mais arejado», «os botões são demasiado pequenos para um polegar», «demasiadas cores, mantém apenas o verde e o cinzento». São comentários que qualquer pessoa pode formular, e a IA compreende-os perfeitamente.

Priorizar: v1 ou mais tarde?

Distingue o «indispensável v1» do «seria bom mais tarde». O teste é simples: sem esta função, a app continua a ser útil? Se sim, é «mais tarde». O Tom aplica o teste: sem a adição de hábitos, a app está vazia — v1. Sem a marcação diária, não serve para nada — v1. Sem as notificações, funciona muito bem — mais tarde. Sem a partilha entre alunos, também — mais tarde.

flowchart TD
  I["Ideia de funcionalidade"] --> Q["Sem ela, a app é útil?"]
  Q -->|"Não, fica inutilizável"| V1["Indispensável v1"]
  Q -->|"Sim, funciona na mesma"| V2["Lista «mais tarde»"]
  V1 --> P["No mini-PRD"]
  V2 --> L["Anotada para a v2"]
O teste de priorização: cada funcionalidade passa pelo crivo antes de entrar na v1.

Guarda a tua lista «mais tarde» num ficheiro ou numa nota: não é um caixote do lixo, é o teu roteiro. No capítulo 5, com a app implementada, é nessa lista que vais buscar as próximas melhorias — guiado pelo feedback dos teus primeiros utilizadores.

Um mini-PRD não está gravado em pedra. Se descobrires ao testar que a tua função 3 é inútil ou que falta uma, atualiza o documento. É uma ferramenta de pilotagem, não um contrato.

Mini-glossário do capítulo

  • PRD: Product Requirements Document, o caderno de encargos de um produto.
  • localStorage: um pequeno espaço de armazenamento no navegador, onde uma app pode guardar dados sem servidor.
  • Mobile-first: conceber primeiro para telemóvel, depois adaptar aos ecrãs grandes.
  • v1 / v2: primeira versão utilizável / versão melhorada seguinte.
  • Streak: série de dias consecutivos de sucesso (termo corrente nas apps de hábitos).
🛠️ É a tua vez

Contexto

O Tom tem de enquadrar a app de acompanhamento de hábitos antes de a mandar gerar. Viu demasiados colegas lançarem-se de cabeça e acabarem com um protótipo confuso que não se parece com nada. Esta noite, impõe-se a disciplina do mini-PRD: dez linhas, cinco blocos, e uma priorização honesta. Agora é a tua vez, com a ideia de app que escolheste no capítulo 1.

Instruções

  1. Redige o teu mini-PRD com os cinco blocos: objetivo, utilizadores, funcionalidades, estilo, técnica.
  2. Verifica que cabe numa dezena de linhas — senão, corta.
  3. Passa cada funcionalidade pelo teste: «sem ela, a app é útil?» Marca «v1» ou «mais tarde».
  4. Verifica que nenhuma palavra-armadilha (conta de utilizador, notificações, tempo real) anda pela tua v1.
  5. Acrescenta a instrução final: «constrói primeiro APENAS as funções 1 e 2».
  6. Envia o mini-PRD à tua ferramenta e observa o resultado sem tocar em mais nada.
  7. Compara o resultado com a tua visão: anota 3 desvios a corrigir na próxima mensagem.
Dica — Se o teu mini-PRD couber em 10 linhas claras, a IA produzirá uma v1 limpa. Se hesitares no bloco técnico, escreve «o mais simples possível, armazenamento local, sem conta» — é sempre uma boa escolha de partida.

Em resumo

  • Sem descrição, a IA preenche os vazios com as escolhas dela — raramente as tuas.
  • O mini-PRD: objetivo, utilizadores, 3-5 funcionalidades, estilo, técnica, em 10 linhas.
  • Dá a visão completa, mas pede para construir uma ou duas funções de cada vez.
  • «Armazenamento local» simplifica a v1 (nem conta nem base de dados).
  • Cuidado com as palavras-armadilha: conta de utilizador, notificações, tempo real = complexidade escondida.
  • Descreve o estilo com adjetivos, referências e uma cor de destaque.
  • O teste de priorização: sem esta função, a app continua a ser útil?
  • A lista «mais tarde» é o teu roteiro para a v2, não um caixote do lixo.

Quiz — verifica a tua compreensão

1. O que contém um mini-PRD?

Um enquadramento conciso em cinco blocos chega para orientar uma boa v1 — e para clarificar o teu próprio pensamento.

2. Como construir com serenidade?

Dá a visão completa no PRD, mas manda construir etapa a etapa: detetas depressa o que parte.

3. Porquê especificar «armazenamento local» na v1?

O localStorage guarda os dados no navegador: zero servidor, zero conta, perfeito para começar.

4. Que palavra do teu PRD esconde mais complexidade?

Uma conta implica registo, login, palavras-passe, recuperação… Guarda isso para uma v2, se for mesmo necessário.

5. Uma funcionalidade falha o teste «sem ela, a app é útil?» (a app funciona sem ela). O que fazes?

A lista «mais tarde» é o teu roteiro v2: a função não está perdida, espera pelo feedback dos verdadeiros utilizadores.

Auteur(s)

R

REHOUMA Haythem

Haythem Rehouma est un ingénieur et architecte IA et cloud, formateur et enseignant technique, avec un profil orienté IA médicale, AWS, MLOps, LLM/RAG et vision par ordinateur.