Ajude a melhorar o JSON Workbench: conte como você usa.

Quando vale comparar arquivos

Todo projeto acaba se desviando: uma configuração que funcionava ontem, um .env diferente em duas máquinas, código gerado que não bate mais, logs de antes e depois de um deploy. Comparar a olho, linha por linha, é lento e sujeito a erro. Uma ferramenta de diff dá a resposta direta: o que é igual e o que foi adicionado, removido ou alterado.

Este comparador faz só isso: alinha dois textos, destaca o que difere e deixa você revisar mudança por mudança. Não mescla nem adivinha intenções. Sem upload, sem conta e sem back-end.

Configurações que divergem

Compare .env, nginx.conf, docker-compose.yml ou manifestos do Kubernetes entre commits ou servidores e encontre a linha que mudou.

Diferenças entre ambientes

Compare as variáveis ou feature flags de staging e production e ache uma chave faltando ou um booleano invertido antes de virar incidente.

Revisão de código gerado

Antes de fazer commit, compare a saída de clientes OpenAPI, stubs de Protobuf ou SQL de migração e veja só o que realmente mudou.

Logs e dados

Coloque dois logs, exportações CSV ou trechos NDJSON lado a lado: as linhas adicionadas e removidas revelam regressões, eventos perdidos ou buracos num pipeline.

Obtendo os arquivos

O editor aceita texto em vez de binários, e oferece três caminhos que terminam na mesma visualização sincronizada. Escolha o método que corresponde a onde seu conteúdo está.

MétodoQuando usarO que acontece
ColarUm trecho já está na sua área de transferência, como um bloco de código de um PR, um extrato de log ou uma configuração copiada via SSH.Clique em Colar desse lado ou pressione Ctrl+V / Cmd+V. O editor daquele lado é substituído pelo texto colado e o diff recalcula.
EnviarO conteúdo está no disco, como um .txt, .json, .yml, .xml ou qualquer arquivo de código-fonte baseado em texto.Arraste o arquivo para a área de upload ou clique nela para abrir o seletor. Apenas um arquivo por lado é aceito. Binários como .pdf, .png, .zip ou .exe são rejeitados. Arquivos maiores que 10MB são anexados como uma Referência de arquivo e transmitidos em partes.
Transferência de ferramentaVocê acabou de decodificar dois payloads Base64 em abas separadas e quer saber por que diferem, ou a saída de um formatador está pronta para ser comparada.Na página de Base64, cada decodificação abre uma aba numerada. Passe o mouse sobre uma aba e clique no ícone ⇄: os dois textos decodificados aparecem aqui, como esquerda e direita, com o nome de cada aba como nome de arquivo. O mesmo repasse funciona a partir da comparação de JSON: abra esta página e o conteúdo já estará carregado.
Os tres caminhos alimentam o mesmo par de paineis. O icone de link acima de cada painel alterna aquele lado entre Pesquisar e importar por URL. A importacao por URL busca o texto remoto e converte automaticamente URLs de visualizacao de arquivo do GitHub para seu equivalente bruto.

Anatomia do resultado

O resultado e uma visualizacao lado a lado sincronizada: dois paineis rolam em conjunto para que cada alteracao em um lado fique alinhada com sua contraparte no outro. O modelo anotado abaixo mostra o layout real:

ARQUIVOS · COMPARAÇÃOtexto simples · lado a lado
Esquerda — app.env.example
1HOST=localhost
2PORT=3000−
3LOG_LEVEL=info
4TIMEOUT=30~
Direita — app.env.production
1HOST=localhost
2PORT=8080+
3LOG_LEVEL=info
4TIMEOUT=60~
O painel esquerdo é o original, e o direito é o modificado. A margem mostra os números das linhas, e a coluna de marcadores mostra +, − ou ~.
1
Adicionado (verde)
Uma linha que existe apenas à direita. O Monaco a colore de verde e coloca um marcador +.
2
Removido (vermelho)
Uma linha que existe apenas à esquerda. É colorida de vermelho com um − e tachada.
3
Alterado (âmbar)
Uma linha emparelhada cujo texto difere. Ambos os lados são coloridos de âmbar com um marcador ~.
4
Alinhado e pesquisável
As linhas inalteradas permanecem neutras. A Pesquisa por lado e as setas globais de Alteração Anterior / Seguinte saltam entre os blocos.
Acima de cada painel, a barra de ferramentas oferece Pesquisar ou importação de URL, Lixeira para limpar o lado, um contador, Copiar, Colar e Aparar (Trim).

Navegando em arquivos grandes

Arquivos maiores que 10MB ativam o modo de transmissão para manter a performance, seja por meio de colagem ou arquivo.

Modo de leitura otimizado

Arquivo grande detectado. Modo de Somente Leitura ativado. O histórico e dobras estão desativados.

Permanece interativo
  • Rolagem sincronizada
  • Pesquisa por lado
  • Navegação global
  • Quebra de linha automática
Temporariamente desativado
  • Edição bloqueada
  • Transformações de formato
  • Colar
  • Minimapa e histórico

O limite de 10 MB vale para cada lado separadamente. Abaixo dele, o conteúdo é preservado automaticamente se você recarregar a aba. Acima, o arquivo é enviado direto ao visualizador sem ser armazenado, então um recarregamento começa do zero. Limpar os dois lados devolve o editor ao modo interativo completo.

Limites e privacidade

Tudo nesta página roda no seu navegador. Nenhum arquivo é enviado, não há processamento em servidor e nada é armazenado além do necessário para mostrar a comparação atual.

Os limites são locais e não impostos por uma cota:

Prioridade local

O texto nunca sai do dispositivo.

Limitado pela memória

Dezenas de megabytes são confortáveis no desktop. Arquivos gigantes de linha única são os mais difíceis.

Sem upload

Os arquivos são lidos localmente no seu dispositivo. A rede só é usada se você importar conteúdo explicitamente por uma URL.

Pegadinhas

Alguns casos surpreendem novos usuários. Eles têm uma solução simples.

Diferenças de espaços em branco▾
Em modo de arquivo, o diff trata o espaçamento como significativo. Use Aparar (Trim) para remover os espaços indesejados.
CRLF vs LF▾
Arquivos Windows usam CRLF, enquanto Mac/Linux usam LF. Aparar resolve isso removendo o \r.
Arquivo JSON minificado quebra o diff▾
Uma linha única não tem onde se alinhar, então qualquer mudança parece afetar o arquivo todo. Passe antes pelo formatador JSON para expandir em várias linhas indentadas e compare de novo. Além disso, linhas gigantes também atrapalham o Remover Espaços, que trabalha linha a linha.
A saída parece corrompida▾
Isso é uma incompatibilidade de codificação, não corrupção do arquivo. A ferramenta espera UTF-8. Arquivos salvos como Windows-1252 ou Latin-1 com caracteres acentuados aparecem com caracteres ilegíveis. Salve o arquivo como UTF-8 primeiro (VS Code: indicador de codificação no canto inferior direito > Salvar com codificação > UTF-8) e compare de novo.
Não há botão Formatar ou Minificar▾
É isso mesmo: esta página faz comparação de texto simples e só oferece «Remover Espaços». Para comparar pela estrutura do JSON, use a comparação de JSON; para formatar, o formatador JSON.

Perguntas frequentes

Meus arquivos são enviados ou armazenados em algum lugar?

Não. Colar, arrastar, importar por URL e calcular a comparação acontecem no seu navegador. Nada é enviado a um servidor, e o conteúdo some quando você fecha a aba.

Que tipos de arquivo dá para comparar?

Qualquer arquivo de texto: .txt, .env, .json, .yml, código-fonte… Binários, como PDF e imagens, são bloqueados antes da leitura.

O que o «Remover Espaços» faz exatamente? Ele altera meu arquivo?

Altera o conteúdo do editor: tira os espaços do início e do fim de cada linha, remove linhas em branco e reduz espaços repetidos a um só. Se suas linhas em branco são intencionais, cuidado. O arquivo original não é tocado.

Qual é o tamanho máximo aceito?

Não há limite rígido, mas acima de 10 MB entra o modo somente leitura e o limite prático é a memória da aba.

Posso comparar aqui conteúdo decodificado de Base64?

Pode. Na página de Base64, cada decodificação abre uma aba numerada: passe o mouse sobre uma, clique no ícone ⇄ e repita com a segunda. Os dois textos aparecem aqui, lado a lado. A comparação de JSON permite o mesmo envio.

Qual a diferença para a comparação de JSON ou de pastas?

A comparação de JSON entende a estrutura do JSON e ignora ruído de espaços; a comparação de pastas compara árvores de diretórios; este comparador de arquivos é para texto simples, em que os espaços importam e é preciso uma comparação estrita linha a linha.

Ferramentas relacionadas

Depois de revisar as diferenças, se o conteúdo for JSON, valide no formatador JSON e use a comparação de JSON para ignorar os espaços; para diretórios inteiros, a comparação de pastas; e para valores codificados, o decodificador Base64.