PROMPT: VERSÃO FINAL DO SITE "DIEGO SILVA ADVOCACIA & CONSULTORIA JURÍDICA" PARA PUBLICAÇÃO NO CLOUDFLARE PAGES
Contexto
Este é o projeto já existente do site do Dr. Diego Silva (Vite + React + TypeScript + Tailwind + motion), até agora publicado como rascunho no Vercel (projeto diego-silva-advocacia-rascunho). O cliente aprovou o conteúdo e pagou. Agora o site vai para o ar de verdade, no domínio dele, hospedado no Cloudflare Pages (plano gratuito). Seu trabalho é transformar o rascunho na versão final de produção e entregar um pacote pronto para publicar. Não invente informações, não altere o conteúdo aprovado, não mude o design.
DADOS DA PUBLICAÇÃO (preencha antes de rodar; se estiver vazio, PARE e pergunte)
- DOMINIO: diegosilvaadvocacia.adv.br (sem https://, sem www)
- URL canônica: https://diegosilvaadvocacia.adv.br (sem www; o www deve redirecionar para ele)
1. Configuração (src/config.ts)
- Definir CONFIG.rascunho = false e remover por completo a faixa/banner "Rascunho para avaliação. Informações sujeitas a confirmação." (componente, estilos e qualquer espaçamento que ele reservava no topo; conferir que o header não ficou com folga estranha).
- Definir CONFIG.siteUrl = "https://diegosilvaadvocacia.adv.br".
- Confirmar que todos os dados continuam vindo de src/config.ts, sem texto fixo duplicado nos componentes.
- Conferir e NÃO alterar: WhatsApp (35) 99856-9709 (link wa.me/5535998569709) em todos os botões, rodapé e dados estruturados; o antigo número 5535998215278 e qualquer whatsappAlternativo não pode existir em lugar nenhum do código. Fazer grep por "98215278" e "whatsappAlternativo".
- Manter o nome "Diego Silva Advocacia & Consultoria Jurídica", a seção "O escritório" seguida de "O advogado", o texto "Há mais de meia década" e o link neutro "Ver no Google Maps".
2. Remover o noindex nas três camadas (o rascunho bloqueava a indexação; a versão final deve ser indexável)
a) index.html: remover meta robots "noindex, nofollow" e qualquer meta googlebot equivalente; colocar .
b) public/robots.txt: substituir por
User-agent: *
Allow: /
Sitemap: https://diegosilvaadvocacia.adv.br/sitemap.xml
c) public/_headers e vercel.json: remover qualquer cabeçalho X-Robots-Tag (noindex). Apagar vercel.json (o site não vai mais para o Vercel). Reescrever public/_headers para o Cloudflare Pages, sem X-Robots-Tag, apenas com cabeçalhos de segurança e cache (ver item 4).
Depois, fazer grep por "noindex", "nofollow" e "X-Robots-Tag" em todo o projeto, incluindo dist/ após o build. O resultado precisa ser zero ocorrências.
3. SEO técnico com o domínio definitivo
- absoluto: https://diegosilvaadvocacia.adv.br/
- og:url, og:title, og:description, og:type, og:locale (pt_BR) e og:image com URL absoluta em https://diegosilvaadvocacia.adv.br/... (se não houver imagem og, gerar uma 1200x630 a partir da identidade já existente do site, sem inventar elementos novos; se não for possível, remover og:image em vez de deixar link quebrado). Twitter card equivalente.
-
e meta description únicos, com o nome do escritório e Poços de Caldas/MG. Sem "especializado", "especialista", "melhor", "nota máxima", avaliações ou promessa de resultado (Provimento 205/2021 da OAB).
- public/sitemap.xml com a URL https://diegosilvaadvocacia.adv.br/ e com a data de hoje.
- Dados estruturados JSON-LD do tipo LegalService (ou Attorney) usando SOMENTE dados que já existem em CONFIG: nome, url, telefone, endereço (se houver no config), cidade/UF. Sem aggregateRating, sem review, sem sameAs inventado.
- Favicon e apple-touch-icon presentes; lang="pt-BR" no .
4. Cloudflare Pages
- A hospedagem será o Cloudflare Pages (plano gratuito), com upload direto do build. NÃO criar netlify.toml e NÃO manter vercel.json.
- Criar public/_headers (formato aceito pelo Cloudflare Pages) com: X-Content-Type-Options: nosniff; Referrer-Policy: strict-origin-when-cross-origin; X-Frame-Options: DENY; Permissions-Policy: camera=(), microphone=(), geolocation=(); Cache-Control "public, max-age=31536000, immutable" para /assets/*; Cache-Control "public, max-age=0, must-revalidate" para /index.html. Sem X-Robots-Tag.
- Se o site usar rotas no cliente, criar public/_redirects com "/* /index.html 200". Se for página única sem rotas, não criar.
- O redirecionamento de www para o domínio sem www será feito no painel do Cloudflare (Redirect Rules), não no código. Não tentar resolver isso em arquivo.
- Remover dependências e arquivos específicos de Vercel e Netlify (vercel.json, netlify.toml, @vercel/*, pasta .vercel). NÃO executar nenhum deploy.
- Sem analytics, sem pixel, sem scripts de terceiros (não ativar o Web Analytics do Cloudflare).
5. Qualidade (rodar e corrigir antes de entregar)
- npm run build sem erros nem warnings relevantes; npx tsc --noEmit limpo.
- Lighthouse (mobile) no build servido localmente (vite preview): Performance, Acessibilidade, Boas práticas e SEO próximos de 100. Corrigir o que estiver abaixo de 95.
- Testar em 360px, 390px, 768px e 1280px: sem rolagem horizontal, botões de WhatsApp visíveis e clicáveis, textos legíveis.
- Conferir que prefers-reduced-motion continua respeitado.
- Conferir que todos os links funcionam: wa.me com o número correto e mensagem inicial, Google Maps, telefone, âncoras internas.
- Grep final no dist/ por: "rascunho", "Rascunho", "noindex", "vercel", "netlify", "98215278", "especializ", "especialista", "nota máxima", "avaliaç". Qualquer ocorrência deve ser explicada ou removida (o "especializ" só é aceitável se vier de texto jurídico neutro aprovado; na dúvida, remover e avisar).
6. Entrega
- Gerar o build de produção e criar o arquivo site-diego-silva-final.zip contendo o CONTEÚDO da pasta dist/ (index.html na raiz do zip, não dentro de uma subpasta), incluindo _headers, robots.txt, sitemap.xml e assets. Esse zip é o que será enviado por upload direto ao Cloudflare Pages.
- Criar também site-diego-silva-fonte.zip com o código-fonte (sem node_modules e sem dist) para guardar como arquivo do cliente.
- Ao final, escrever um relatório curto com: o que foi alterado, resultado dos greps (zero ocorrências esperadas), notas do Lighthouse, e qualquer ponto que precise de decisão minha. Se algo não puder ser verificado, diga claramente em vez de supor.
Regras
- Não peça nem use senhas, tokens ou acessos do cliente.
- Se um deploy ou autenticação falhar, NÃO tente contornar; entregue os zips e pare.
- Não inclua depoimentos, avaliações, notas, números de clientes ou resultados prometidos.