Chegou enfim a Fase 3, "criar". Com a especificação decidida no Capítulo 2 e a tecnologia e as ferramentas escolhidas no Capítulo 3 em mãos, você vai montar algo que funciona de fato. A maioria de quem tropeça aqui, na verdade, não é porque "não sabe escrever código". Desiste porque tenta chegar ao produto pronto de uma vez. Neste capítulo, com a IA de parceira, mostramos nas duas rotas – iniciante e prática – como rodar rápido o "criar pequeno e fazer funcionar".

A "forma de criar" que este capítulo ensina

A mira não é "pronto de uma vez", é "avançar em pequeno"

Uma forma que roda
Ganhar o hábito de repetir "criar → rodar → corrigir" em pequeno e rápido.
Implementar por rota
Como seguir em cada rota: 🌱 iniciante corrigindo pela conversa e 🔧 prática entregando a especificação.
Embutir a IA
Poder escolher as opções para pôr IA no app (API, vários modelos, RAG).

A postura básica da implementação – rodar em pequeno

A postura mais importante na implementação é só 1: repetir rápido "criar pequeno, fazer funcionar e corrigir". Sem tentar criar de uma tacada só a forma pronta que está na sua cabeça, você primeiro cria o menor "bloco que funciona" e o cultiva aos poucos.

Por que isso funciona? Porque um programa só mostra o que está errado quando você o roda. Se você escreve 100 linhas e roda de uma vez, fica sem saber onde está a causa e se desespera. Escrevendo 10 linhas e rodando, o erro só pode estar naquelas 10 linhas. Quando você manda a IA escrever é exatamente igual: pedir pequeno e conferir logo faz avançar, no fim, muito mais rápido e com mais certeza.

😓 O erro comum

Largar tudo na IA: "cria todas as funcionalidades de uma vez". Sai uma pilha de código, mas ao rodar é só erro. Você não sabe onde está a causa e perde a energia de corrigir.

🚀 A forma que dá certo

Pedir 1 funcionalidade por vez: "por enquanto, só a tela que mostra a lista". Funcionou, vai para a próxima, e acumula. Dá para avançar mantendo sempre um "estado que funciona".

⚠️ A IA também erra o código – por isso, rode sempre você mesmo. O código que a IA escreve, por mais que pareça convincente, muitas vezes dá erro ao rodar ou se comporta diferente do que você quis. "Como foi a IA que escreveu, deve estar certo" é proibido. O código que sai você deve rodar com as próprias mãos e conferir com os olhos. Essa é a primeira regra de ouro a adquirir no desenvolvimento solo. Se você avança sem rodar, os erros se acumulam e a coisa foge do controle.

Os passos do ciclo "criar, rodar e corrigir"

Esse "rodar em pequeno" transformado em 4 passos concretos é o esquema abaixo. Você gira 1 funcionalidade por vez nesse ciclo. Uma volta leva de alguns a algumas dezenas de minutos. Quanto mais rápido você gira, mais melhora.

PASSO 1
Pedir pequeno

Peça à IA de forma concreta: "agora, só esta 1 funcionalidade". Quanto mais estreito o escopo, mais precisão.

PASSO 2
Rodar na hora

Saiu, execute na hora. No navegador ou no terminal, confira o resultado com os seus olhos.

PASSO 3
Corrigir e ajustar

Se houver erro ou algo estranho, corrija pela conversa: "muda isto aqui assim". Repita até funcionar.

PASSO 4
Salvar e ir adiante

Funcionou, salve como marco (commit). Guarde o bom estado e vá para a próxima funcionalidade.

💡 Não menospreze o PASSO 4, "salvar". Salvando (commit do Git) toda vez que 1 funcionalidade passa a funcionar, se a próxima mudança quebrar algo você pode voltar ao último estado que funcionava. É a corda de segurança que evita a tragédia do "ontem funcionava". A forma concreta de salvar tratamos em detalhe no próximo Capítulo 5.

O estilo de implementação da rota iniciante e da prática

"Rodar em pequeno" é a postura comum, mas a forma concreta de rodar muda conforme a rota. Confira o passo a passo de acordo com a rota que você escolheu no Capítulo 1. Claro que você pode misturar ou trocar no meio do caminho.

🌱 Rota iniciante – dar forma pela conversa
Não precisa ler o código

Com vibe coding, você monta o app conversando com a IA. "Cria a tela de lista" → "deixa o botão azul" → "faz salvar ao apertar" – pedir em linguagem natural, ver a tela e pedir de novo. Essa repetição já é, em si, o "ciclo de rodar em pequeno".

Segredo: peça só 1 coisa por vez. Se não der certo, basta dizer "desfaz a última mudança".

🔧 Rota prática – entregar a especificação e delegar
Automatizar com o editor de IA

Entregue ao Claude Code, por exemplo, a especificação inteira e delegue uma implementação em bloco. Ajuste o esforço (effort) conforme o volume de trabalho e alterne os modos de permissão para que ele não reescreva arquivos demais por conta própria, automatizando de forma segura. Esse é o ponto.

Segredo: delegue grande, mas confira pequeno. Travou, procure a solução na coletânea de erros.

Em qualquer das rotas, o que não se pode esquecer é a postura básica de "rodar você mesmo o que sai e conferir". Criar pela conversa ou mandar criar automaticamente, conferir é trabalho do humano. Não pular esse cuidado é o que separa quem chega ao fim de quem não chega.

Se você vai embutir recursos de IA

Se o que você cria é um "app que usa IA" – por exemplo, resumir textos, responder perguntas, classificar imagens – então você precisa de um mecanismo para chamar a IA de dentro do app. Aqui fica um pouco mais técnico, mas as opções se resumem a 3. Basta escolher só o que o seu app precisa.

① Chamar a IA
Comece por aqui

Para só usar 1 modelo de IA a partir do app, o básico é chamar uma API de IA. Pense nela como um "balcão" onde "você envia um texto e volta a resposta da IA".

② Lidar com vários modelos
Se quiser alternar ou comparar

Se quiser usar várias IAs conforme a situação, unifique numa forma comum de escrever com o Vercel AI SDK. Para gerenciar de forma centralizada em operação, um LLM gateway ajuda.

③ Responder com dados próprios
Se quiser dar conhecimento próprio

Se quiser respostas baseadas em documentos internos ou seus próprios materiais, RAG. É o mecanismo de entregar à IA "um material só seu" para ela responder, e permite mostrar originalidade.

🧭 Na dúvida, só o ① basta. No primeiro MVP, quase sempre chamar 1 API de IA já é suficiente. ② e ③ você acrescenta quando surgir a necessidade de "comparar vários modelos" ou "responder com dados próprios". Aqui também, "criar pequeno" é a resposta certa.

Como se mexer quando travar

Durante a implementação, você vai travar em algum ponto, sem falta. Dá erro, não se comporta como você esperava – isto não é fracasso, é a prova de que você está criando. O importante é, ao travar, não entrar em pânico e separar as coisas em ordem. Com a IA por perto hoje, sai-se de uma travada muito mais rápido do que antes.

1. Passe a mensagem de erro tal como está à IA

Copie o texto em vermelho inteiro e pergunte "deu este erro. Qual a causa e como corrigir?". A mensagem de erro é a maior pista. Não reescreva do seu jeito; primeiro cole.

2. Separe em pequeno

Lembre "até onde estava funcionando". Na maioria, a causa é o único ponto que você mudou por último. Estreitando o escopo, a causa sempre aparece.

3. Volte a um estado que funciona

Se emaranhou, volte ao último estado que funcionava, que você salvou, e refaça. Muitas vezes voltar é mais rápido que insistir cavando.

🔧 Para quem está na rota prática. Os erros mais comuns no Claude Code, por exemplo, e como resolvê-los estão reunidos na coletânea de erros. Sofrer com o mesmo erro é perda de tempo. Faça do "travou, primeiro pesquisar; se ainda assim não der, perguntar à IA" um hábito.

Resumo deste capítulo

O cerne da Fase 3, "criar", está mais na postura de rodar rápido "criar pequeno, fazer funcionar e corrigir" do que na técnica. Sem mirar no produto pronto de uma vez, cultive o bloco que funciona aos poucos.

Resumo deste capítulo
  • A postura básica é rodar rápido "criar pequeno, fazer funcionar → corrigir". Não mire no produto pronto de uma vez.
  • A IA também erra o código. O que sai, rode e confira você mesmo, sempre.
  • 🌱 iniciante, com vibe coding conversando; 🔧 prática, entregando a especificação e automatizando com segurança via esforço e modos de permissão.
  • Para pôr IA, comece pela API. Vários modelos, Vercel AI SDK / LLM gateway; dados próprios, RAG.
  • Travou: passar a mensagem de erro → separar em pequeno → voltar a um estado que funciona. Use também a coletânea de erros.

Com algo que funciona pronto, chega a vez de lançá-lo ao mundo com segurança. Você pode voltar ao Capítulo 3, "Escolher tecnologia e ferramentas" para revisar a preparação, mas, se a implementação começou a rodar, avance ao Capítulo 5, "Testar e lançar ao mundo", firmando testes e segurança para publicar.