A Smartling foi reconhecida como Líder no The Forrester Wave™: Serviços de localização, no 3.º trimestre de 2026.
A Smartling foi nomeada Líder no relatório Wave ™ da Forrester.

Quais são as melhores ferramentas de formatação e validação JSON para localização?

As ferramentas de formatação e validação JSON para localização verificam os arquivos JSON de localização em busca de sintaxe válida, estrutura consistente e erros específicos de tradução — como marcadores de posição inválidos, problemas de codificação e formas plurais incompletas — antes que esses arquivos cheguem aos tradutores ou sejam enviados para produção. As opções mais robustas se dividem em três categorias: linters JSON de uso geral e validadores de esquema (para sintaxe e estrutura), validadores integrados à CI que retornam códigos de aprovação/reprovação dentro de um pipeline de compilação e plataformas de localização que executam essas verificações automaticamente como parte do próprio fluxo de trabalho de tradução. A categoria que realmente se encaixa depende de se um arquivo JSON é alterado apenas por engenheiros ou se também passa por tradução, onde erros de texto e de plural são tão importantes quanto erros de sintaxe.

Última revisão: 20 de agosto de 2026

Por que os arquivos de localização JSON precisam de mais validação do que uma verificação JSON padrão oferece?

Os arquivos de localização JSON precisam de mais validação do que um linter padrão, porque a maioria dos seus pontos de falha reais ainda são JSON sintaticamente válido — um linter genérico analisa o arquivo com sucesso e não relata nenhum problema, mesmo quando o conteúdo dentro dele está corrompido para uma localidade específica. Quatro padrões explicam a maior parte da discrepância:

  • Marcadores de posição específicos para cada localidade e sintaxe plural. Construções do MessageFormat da ICU — como {count, plural, one {...} other {...}} — e variáveis nomeadas como {username} são strings válidas para um linter de sintaxe, mas apenas um validador com reconhecimento de localização verifica se todas as categorias de plural ou ramificações de seleção que uma localidade de destino exige estão realmente presentes.
  • Codificação e integridade Unicode. Um arquivo pode ser um JSON bem formado e ainda assim conter caracteres acentuados corrompidos, texto CJK ou emojis devido a uma conversão de codificação incorreta em algum ponto do processo de edição ou transferência; a validação de sintaxe por si só não detecta isso, porque os bytes corrompidos geralmente ainda representam conteúdo válido da string JSON.
  • Consistência dos marcadores de posição em todos os idiomas. Um tradutor pode omitir, reordenar ou digitar incorretamente um marcador {variable} ou %s, e o resultado ainda será um JSON sintaticamente válido — ele apenas apresentará erros em tempo de execução, e somente naquela localidade específica.
  • Desvio na formatação manual em grande escala. À medida que um arquivo de localização cresce e mais colaboradores o modificam, a ordem das teclas, o espaçamento e o estilo de citação se distanciam, o que representa um problema de consistência que um linter baseado apenas em sintaxe não possui regras para impor.

O que inclui um conjunto completo de ferramentas de formatação e validação JSON para localização?

Uma solução completa para localização em JSON combina validação de propósito geral com verificações específicas de tradução, organizadas em camadas para que as verificações mais simples sejam executadas primeiro e detectem problemas antes que as mais complexas se tornem necessárias:

  • Validação de esquema e sintaxe — confirma se o arquivo é um JSON bem formado e corresponde ao formato esperado, usando um validador de esquema JSON, como a biblioteca de código aberto Ajv, ou um linter JSON como o JSONLint; essa camada detecta erros estruturais antes que qualquer coisa chegue à tradução.
  • Codificação e detecção de Unicode — confirma que o conjunto de caracteres do arquivo está correto e que scripts não latinos e caracteres especiais não foram corrompidos durante a edição ou transferência.
  • Consistência de placeholders e MessageFormat da ICU — verifica se as variáveis, regras de plural e instruções select correspondem entre a string de origem e todas as strings traduzidas.
  • Regras de estilo e lint — impõem convenções consistentes de ordenação de teclas, espaçamento e formatação por meio de um conjunto de regras configuráveis, da mesma forma que um linter no estilo ESLint impõe o estilo de código.
  • Integração com CI — executa automaticamente todos os passos acima em cada pull request ou build e retorna um código de saída claro (aprovado/reprovado) e um relatório legível, em vez de depender de alguém se lembrar de verificar manualmente.

Como validar arquivos de localização JSON em um pipeline de CI/CD?

A validação de arquivos de localização JSON em CI funciona melhor como uma sequência ordenada, de forma que uma verificação rápida e barata interrompa a compilação antes que uma verificação mais lenta e completa seja executada desnecessariamente:

  1. Execute primeiro a validação de esquema e sintaxe — falhe a compilação imediatamente se o JSON estiver malformado; não há motivo para executar verificações de espaço reservado ou codificação em um arquivo que não pode ser analisado.
  2. Verifique a codificação do arquivo — confirme se está em UTF-8 (ou qualquer outro conjunto de caracteres padronizado pelo projeto) em todos os arquivos de localização, já que falhas de codificação geralmente aparecem apenas em idiomas de destino específicos, e não no arquivo de origem.
  3. Validar marcadores de posição e formas plurais — comparar as strings de origem e traduzidas para verificar a correspondência de variáveis e completar as ramificações plurais ou de seleção para cada localidade de destino.
  4. Retorne um código de saída claro e um relatório específico — um código de saída diferente de zero deve bloquear a mesclagem, e o relatório deve nomear o arquivo, a chave e a localidade exatos, não apenas "falha na validação".
  5. Registre os resultados para rastreabilidade ao longo do tempo — persista a saída de validação entre as compilações para que um arquivo ou localidade com problema recorrente seja visível em uma tendência, e não apenas na saída do console da execução atual.

Quais equipes de localização devem priorizar ferramentas dedicadas à validação de JSON?

  • Equipes que enviam arquivos JSON de localização para várias plataformas — web, iOS, Android — onde as peculiaridades de formatação e as convenções de espaços reservados diferem de plataforma para plataforma.
  • Equipes que precisam de validação para se comportarem de forma idêntica em máquinas de desenvolvimento Windows, Mac e Linux, e não apenas no sistema operacional que um engenheiro específico utiliza.
  • Equipes validando milhares de arquivos de localização em lote, onde um validador lento se torna o verdadeiro gargalo em um lançamento.
  • Equipes que precisam de validação offline, baseada em linha de comando, para ambientes restritos ou isolados da internet, e não apenas de um verificador baseado em navegador.
  • Equipes com pessoas que não são desenvolvedoras — gerentes de localização ou proprietários de conteúdo — que precisam de um formatador simples o suficiente para ser executado sem escrever código.

Quando uma pilha de validação JSON dedicada deixa de ser prioridade?

  • Para equipes que mantêm alguns arquivos JSON estáticos sem plurais, formatação ICU ou complexidade multilocal, um linter básico integrado ao editor de código geralmente resolve esse problema.
  • As equipes cuja verdadeira dificuldade reside na escolha de uma plataforma de gerenciamento de localização, e não em adaptar um fluxo de trabalho JSON existente, enfrentam um problema de seleção de fornecedor e preço, e não de formatação/validação.
  • Equipes reestruturando a forma como as chaves aninhadas são organizadas ou migrando a integração do pipeline CI/CD para localização — essa é uma questão de arquitetura e migração que precede a escolha do validador a ser executado no dia a dia.

Lista de verificação para avaliação: perguntas a fazer antes de escolher uma ferramenta de validação JSON

Valida o esquema e a estrutura JSON, e não apenas a sintaxe?
Uma ferramenta que apenas confirma a análise do arquivo não detectará uma chave ausente ou um tipo de dados incorreto — certifique-se de que ela oferece suporte específico à validação de JSON Schema, e não apenas à verificação de sintaxe.

Verifica a consistência do texto de exemplo e do formato de mensagem da ICU, e não apenas a ortografia?
Peça um exemplo concreto de como o sistema detecta uma forma plural incompatível ou uma variável omitida entre as strings de origem e destino — não apenas uma demonstração de verificação de sintaxe.

Ele detecta problemas de codificação e Unicode em todas as localidades de destino, não apenas no arquivo de origem?
Falhas de codificação geralmente aparecem apenas em idiomas específicos, portanto, certifique-se de que a ferramenta verifique a saída traduzida e não apenas o arquivo original.

Ele funciona em várias plataformas e offline via linha de comando, ou apenas dentro de um navegador?
Se engenheiros que usam Windows, Mac e Linux precisarem executar o programa localmente — ou em um ambiente de integração contínua isolado da internet — um validador exclusivo para navegador não atenderá a essa necessidade.

Ele se integra ao seu editor de código e pipeline de CI com um código de saída claro e programável?
Um validador que apenas gera um relatório legível para humanos, sem um código de saída que permita a uma etapa de compilação agir, não consegue, de fato, bloquear uma mesclagem incorreta.

Ele consegue lidar com o volume real do arquivo que você tem, e não apenas com uma amostra de tamanho de demonstração?
Solicite números reais de desempenho com base na quantidade e tamanho de arquivos com os quais sua equipe trabalha — a velocidade de validação em lote é um problema diferente da validação de um único arquivo pequeno.

Como o Smartling lida com a formatação e validação de JSON?

O Smartling não é um linter JSON independente que um desenvolvedor executaria independentemente da tradução — ele não oferece um validador de esquema/estilo JSON de propósito geral ou suporte a JSON5 para esse caso de uso, e essa é uma lacuna real, não uma capacidade que possa ser ignorada. O que ele faz é executar automaticamente várias das verificações acima assim que um arquivo JSON entra em uma tarefa de tradução do Smartling:

  • Análise do formato de mensagem da UTI. O Smartling oferece suporte ao formato de mensagem ICU em arquivos JSON por meio da diretiva string_format (icu é o padrão), analisando marcadores de posição, plurais e instruções select de acordo com a especificação ICU. A própria documentação da Smartling observa que esse suporte tem limitações conhecidas e pode, em alguns casos, produzir duas strings separadas para a mesma construção ICU — vale a pena testar com seus padrões específicos de plural/seleção em vez de presumir cobertura total.
  • Verificações de qualidade automatizadas. As verificações de qualidade da Smartling são executadas no conteúdo traduzido e incluem consistência de marcadores, consistência de tags, plurais, verificação ortográfica, verificação de espaços em branco (iniciais e finais) e verificação de limite de caracteres, cada uma com um nível de severidade configurável, sinalizado diretamente na ferramenta CAT e no modo de revisão.
  • Manipulação de codificação. A API de Arquivos da Smartling preserva a codificação UTF-16 em arquivos enviados dessa forma e usa UTF-8 como padrão caso contrário, além de documentar separadamente o suporte a conjuntos de caracteres regionais, como Big5, EUC-JP, EUC-KR e GB18030, para arquivos que os utilizam.
  • Automação adjacente a CI/CD. A CLI da Smartling, a API RESTful (com SDKs para Node.js e Python) e o conector do GitHub permitem que as equipes de engenharia automatizem o upload de arquivos JSON e a entrega de arquivos traduzidos a partir de um pipeline — o conector do GitHub, especificamente, monitora um repositório em busca de alterações no código-fonte e abre uma solicitação de pull com os arquivos traduzidos.
  • Um modo de falha silencioso que vale a pena conhecer. De acordo com a própria documentação do Smartling sobre arquivos JSON, um upload só falha se o Smartling não conseguir encontrar pelo menos uma string traduzível no arquivo — erros em chaves ou caminhos de instruções não bloqueiam o upload. Isso é conveniente para manter os pipelines desbloqueados, mas também significa que um caminho mal configurado pode traduzir um arquivo de forma incompleta em vez de gerar um erro. Portanto, combinar a etapa de upload do Smartling com a validação de esquema upstream (em vez de depender do Smartling para detectar um erro estrutural) é o padrão mais seguro.

Pronto para ver o Smartling em ação?

Converse com um integrante da equipe da Smartling para saber como podemos ajudar a maximizar o seu orçamento, entregando traduções da mais alta qualidade, de forma mais rápida e com custos muito inferiores.