Ir para o conteúdo
decodecodeveloper docs
Storefront → Templates → Validação da migração

parity migrate

Captura em fases, agnóstica de destino, de uma loja no ar num bundle de migração pronto para agente.

parity migrate captura uma loja no ar num bundle enxuto em tokens e pronto para agente, para reconstruí-la numa stack nova (ex.: VTEX FastStore v4). Ele lê a página renderizada, então funciona com ou sem código-fonte.

parity migrate --url https://www.loja.com \
  --target faststore --viewports mobile,desktop --open

Tudo é escrito em ./parity-migrate/<host>/.

Fases (retomáveis)

  1. Tema + assets — elege as cores primária/secundária/de fundo/de texto e as escalas de tipografia / espaçamento / raios / breakpoints; baixa o logo, favicon, web fonts (@font-face) e um inventário de ícones; um screenshot de página inteira por viewport.
  2. Sitemap — descobre e classifica páginas, depois amostra por tipo (home, PLPs, PDPs, busca e páginas institucionais) para você capturar a loja inteira — --sample plp=2,pdp=2,other=3,search=1 (limitado a 15).
  3. Componentes — por página, o HTML renderizado de cada componente, classes Tailwind determinísticas, dicas de interação e seletores de e2e sugeridos. Repetições estruturalmente idênticas colapsam num representante + uma contagem.

O diretório de saída é estável por host, então uma nova execução pula uma fase concluída; --refresh refaz tudo.

Lojas VTEX IO

Em VTEX IO, o migrate lê a árvore de blocos real da loja a partir do render-runtime em cada página capturada, mesclada e sem duplicatas. Ele escreve:

  • blocks.json — todo bloco incluindo suas props — o conteúdo de CMS que o lojista cadastrou (imagens de banner, textos, links, configuração de prateleira). Referências de imagem são resolvidas para URLs absolutas.
  • content-assets.json + assets/content/ — as imagens de conteúdo (props dos blocos e a imagética de produto/catálogo do estado do Apollo), baixadas localmente.
  • component-map.json — cada bloco VTEX mapeado para um componente de destino (product-summary → ProductCard), com os desconhecidos marcados como custom-component.

Saída

ArquivoO que é
report.htmlRelatório visual autocontido — amostras de tema, screenshots, tabelas de componentes por página, mapa VTEX → destino. Um arquivo só para compartilhar. --open abre.
index.mdO mesmo, em Markdown enxuto em tokens, para um agente.
MIGRATION_PROMPT.mdInstruções de agente prontas para colar + o playbook do destino.
custom-theme.scss(--target faststore) tokens de marca → tokens globais --fs-* do FastStore.
manifest.jsonO bundle bruto completo (HTML + estilos computados) — a camada de fallback.

A saída contém conteúdo e assets de uma loja real. Mantenha parity-migrate/ no gitignore — nunca comite dados raspados de loja.

Destinos

--target faststore anexa um playbook (comandos de CLI, links de doc, estrutura de seção/CMS, ícones Phosphor) e emite custom-theme.scss. A captura em si é agnóstica de destino — os mesmos dados alimentam qualquer destino (FastStore, TanStack Start, …); só mudam o playbook e o emissor de tema.

Veja também