Pular para o conteúdo principal
Voltar ao blog
Claude Code IA Desenvolvimento Produtividade Astro

Construímos nosso site inteiro com Claude Code — lições do git log

Como usamos Claude Code para construir soamee.com: dados reais do repositório, o que funcionou, o que falhou e lições para equipes de desenvolvimento.

JM
Javier Manzano
CEO & Co-founder • 6 de agosto de 2026
Construímos nosso site inteiro com Claude Code — lições do git log

Há algo desconfortável em publicar este artigo. A Soamee é uma agência de software. Empresas nos contratam para construir produtos digitais. E durante o último ano e meio, usamos o Claude Code extensivamente para construir nosso próprio site. Isso é o que encontramos quando abrimos o git log.

Não é um artigo de marketing sobre IA. É uma autópsia honesta: o que nos poupou semanas, o que tivemos que refazer e por que continuamos usando a ferramenta apesar das suas limitações.

Os números do repositório

Antes da análise, os fatos:

  • 639 commits desde janeiro de 2025
  • 331 commits com participação do Claude Code (marcados com Co-Authored-By: Claude)
  • 534 arquivos .astro no projeto atual
  • 345 posts de blog publicados ou em rascunho
  • 115 estudos de caso em diferentes idiomas
  • 5 idiomas: espanhol, inglês, português, italiano e alemão
  • O site está em produção contínua no Dokku em soamee.com

Esses 52% de commits com participação de IA não significam que o Claude Code escreveu metade do código. Significa que esteve presente em mais da metade das sessões de trabalho — às vezes gerando arquivos inteiros, às vezes sugerindo uma correção de três linhas.

O que o Claude Code construiu

O sistema de tradução

Este é o caso de uso onde mais recuperamos tempo. O site tem cinco idiomas. Cada post de blog, cada estudo de caso, cada página de serviço existe em ES, EN, PT, IT e DE. Sem IA, isso teria significado contratar quatro tradutores ou aceitar um atraso enorme entre o conteúdo em espanhol e suas versões traduzidas.

O Claude Code gerou as traduções iniciais. Não perfeitas — o português tende a contaminar com espanhol quando o modelo perde contexto, o alemão precisa de revisão de umlauts, o italiano às vezes mistura registros. Mas um rascunho funcional existe em segundos, não em dias. Os commits do log falam por si: “Revisão contextual do português: blocos em espanhol e acentos ambíguos”, “Corrige conteúdo em alemão: umlauts, erros e blocos em espanhol”.

Revisamos cada tradução. Mas revisar é muito mais rápido do que criar do zero.

O script de verificação de traduções

Temos um verificador de traduções que falha no CI se algum conteúdo em espanhol não tiver sua versão nos outros quatro idiomas. O Claude Code escreveu a primeira versão de scripts/translation-checker.cjs, com seus aliases de categorias, exceções para páginas apenas em espanhol e integração com o hook pre-push.

É um script Node de 400 linhas que faz exatamente o que especificamos. Não é glamouroso. É exatamente o tipo de tarefa onde um desenvolvedor humano leva duas horas e o Claude Code leva vinte minutos.

Componentes repetitivos

O site tem páginas de serviços, de indústrias, de soluções — muitas páginas com estrutura similar mas conteúdo diferente. O Claude Code gerou a maioria seguindo o padrão estabelecido. Quando o design do padrão mudou, as atualizamos em lote.

Também escreveu o middleware de normalização de URLs (HTTP para HTTPS, trailing slashes, redirecionamentos 301 para erros 404 detectados no Google Search Console), o gerador de sitemap e vários scripts de CI.

O conteúdo do blog

Praticamente todos os posts deste blog tiveram alguma participação do Claude Code. Às vezes gerou o rascunho completo a partir de um outline; às vezes sugeriu estruturas para artigos que eu já tinha começado; às vezes simplesmente expandiu seções que ficaram curtas.

A voz é sempre revisada. A estrutura geralmente é sugerida. Os dados são sempre verificados manualmente.

O que os humanos tiveram que fazer

Design visual

Este é o limite mais claro. O Claude Code pode implementar um design que você descreve com precisão. Não pode inventar um. A identidade visual da Soamee — o deep purple (#1e1548), o mint (#5dd3b3), os padrões de listras diagonais a 45 graus, as bolhas concêntricas — saiu de decisões humanas, não de IA.

Quando pedíamos ao Claude Code para “melhorar o design do blog”, às vezes produzia algo que funcionava tecnicamente mas não soava como nós. Tivemos que aprender a ser muito específicos: “adicione uma borda esquerda de 3px na cor mint nos blockquotes” funciona. “Melhore o design” não funciona.

Decisões de arquitetura

Escolher Astro 5 com SSR híbrido foi uma decisão humana. Escolher Tailwind CSS v4 antes de haver muita documentação foi uma decisão humana (e cara em tempo de debugging). Escolher Dokku sobre outras opções de deploy foi uma decisão humana.

O Claude Code pode avaliar opções se você as apresentar, mas os critérios de seleção — o que importa para o nosso negócio, nosso stack, nossa capacidade operacional — vêm de nós.

Revisão de cada PR

Nenhuma mudança gerada pelo Claude Code foi para produção sem revisão. Não porque não confiamos no modelo, mas porque a revisão humana captura coisas que o modelo não pode saber: se o tom de um parágrafo combina com como falamos, se uma funcionalidade nova faz sentido para o negócio, se um link interno aponta para o lugar certo.

O git log mostra commits como “Fix broken internal links: /contacto and /servicios/consultoria-tecnologica”. Esses links foram quebrados por uma mudança anterior gerada com IA. Foram corrigidos em uma sessão de revisão subsequente.

A lógica de negócio real

O formulário de contato envia através do Mailgun. A lógica de rate limiting, o tratamento de erros, os campos obrigatórios — isso foi projetado por nós. O Claude Code implementou o código uma vez que tínhamos o comportamento esperado claramente definido.

O fluxo de trabalho que funcionou

Levamos alguns meses para encontrar o fluxo que realmente funciona. O que não funciona: dar ao Claude Code uma tarefa ambígua e esperar o resultado perfeito. O que funciona:

1. Especificação primeiro. Antes de abrir o Claude Code, escrevemos o que queremos: o comportamento exato, as restrições, os casos extremos. Quanto mais específica a especificação, menos iterações.

2. Branches e PRs sempre. Toda mudança gerada com IA vai em uma branch. Nunca diretamente para master. Isso permite revisar o diff completo antes de mergear e reverter facilmente se algo falhar.

3. CI como rede de segurança. O verificador de traduções, o verificador de imagens, os testes de links internos — tudo roda no CI. O Claude Code às vezes gera conteúdo que passa sintaticamente mas falha semanticamente (um link para uma página que não existe, uma imagem referenciada mas não criada). O CI captura isso.

4. Revisão por seções. Não revisamos um PR de 50 arquivos de uma vez. Dividimos em blocos temáticos: primeiro o conteúdo em espanhol, depois as traduções de um idioma, depois os outros.

5. Um humano fecha o commit. Sempre. A mensagem de commit é escrita por um humano, não pelo Claude Code. É um sinal pequeno mas importante de que alguém olhou.

O que nos surpreendeu (bom e ruim)

Surpresas positivas

O debugging de CSS é extraordinariamente bom. O Tailwind CSS v4 era território novo com pouca documentação quando o adotamos. O Claude Code nos ajudou a entender por que certos breakpoints não se comportavam como esperávamos e como funciona o sistema de camadas do v4. Sem essa ajuda, teríamos levado muito mais tempo para estabilizar o sistema de design.

Scripts de automação são seu ponto forte. Verificador de traduções, verificador de links, gerador de sitemap, scripts de snapshot de SEO — ferramentas que teriam levado dias são geradas em horas e depois refinadas.

A consistência entre arquivos similares é notável. Quando você tem um padrão — uma página de serviço, um post de blog com FAQ, um estudo de caso — o modelo o replica com fidelidade. Os humanos são inconsistentes por natureza; o modelo não é.

Surpresas negativas

Alucinação de dependências. Especialmente nas fases iniciais com Astro 5 e Tailwind v4, o Claude Code às vezes sugeria APIs que não existiam nessas versões. Aprendemos a sempre verificar contra a documentação oficial antes de implementar.

O problema do contexto longo. Em sessões muito longas, o modelo pode “esquecer” restrições estabelecidas no início. Um exemplo real: estabelecemos no início que não usaríamos certos componentes deprecated, e cinco horas depois o Claude Code os sugeriu novamente. Sessões curtas e focalizadas funcionam melhor.

Design “genérico” por padrão. Sem instruções muito específicas, o Claude Code tende a soluções que parecem qualquer outro site com Tailwind. Tecnicamente correto, visualmente sem personalidade. A identidade de marca requer supervisão constante.

As traduções para português precisam de revisão especial. O modelo confunde espanhol e português com mais frequência do que qualquer outro par de idiomas. Provavelmente pela similaridade entre as línguas. As revisões de PT são sistematicamente mais longas do que as de DE ou IT.

Faríamos de novo? Sim, com ressalvas

Se começássemos soamee.com hoje, usaríamos o Claude Code desde o primeiro dia. Mas com estas diretrizes claras:

Use-o para volume, não para decisões. Se você precisa criar 20 páginas similares, o Claude Code é imbatível. Se você precisa decidir se essas páginas devem existir, isso é com você.

O tempo de revisão não desaparece, muda. Antes do fluxo com IA, o tempo era investido em criar. Agora é investido em revisar. É uma mudança de natureza, não uma redução proporcional. Criar com IA é mais rápido; revisar requer atenção e julgamento.

Não abandone o CI por confiança. Toda vez que pensamos “essa mudança é tão simples que não precisa de verificação completa”, algo falha. O CI roda sempre, sem exceções.

A voz de marca é intransferível. O Claude Code pode imitar estilos, mas não conhece sua empresa, seus clientes, seus valores internos. Os textos que importam — propostas de valor, descrições de serviços, estudos de caso — sempre passam por edição humana.

Conclusão

639 commits. 331 com participação de IA. 534 arquivos Astro. 5 idiomas. E um site que funciona em produção, ranqueia e converte.

O Claude Code construiu soamee.com? Não exatamente. Nós construímos, com o Claude Code como ferramenta principal para o volume de trabalho. A distinção importa: a ferramenta não tem participação no resultado, não conhece o contexto de negócio, não toma as decisões que definem o produto.

Se você tem um projeto com muito conteúdo repetitivo, traduções para múltiplos idiomas ou precisa mover muito código rapidamente, o Claude Code pode mudar significativamente sua capacidade de output. Com revisão humana sistemática, CI rigoroso e expectativas calibradas sobre o que pode e não pode fazer.

Se você tem curiosidade sobre como tomamos decisões de stack, pode ver nossos projetos open-source e como trabalhamos.

O git log não mente. E o nosso diz que essa combinação funciona.

Não perca nada

JM

Javier Manzano

CEO & Co-founder na Soamee

Apaixonado por tecnologia e desenvolvimento de software. Compartilhando conhecimentos e experiências para ajudar outros desenvolvedores a crescer.

Gostou deste artigo?

Se você precisa de ajuda com seu projeto de desenvolvimento, estamos aqui para você.

Construímos nosso site com Claude Code

Conte-nos seu desafio. Propomos uma solução.

Sem compromisso. Em menos de 24 horas, você recebe uma proposta com escopo, cronograma e orçamento. Sem letras miúdas.

Agende uma call gratuita →