Guia do MetaRinse
Como o MetaRinse processa imagens no dispositivo
O MetaRinse usa a File API (API de Arquivos) e outros recursos do navegador para decodificar imagens, recodificar os pixels com canvas e criar URLs de objeto. Os bytes da imagem e os campos extraídos não são enviados a um servidor.

A sequência local
| Etapa | Ação no navegador | Dados da imagem enviados |
|---|---|---|
| Selecionar | A File API cria um objeto File para o arquivo local escolhido | Nenhum |
| Analisar | A biblioteca exifr e os leitores complementares analisam os campos reconhecidos em um Web Worker, quando disponível | Nenhum |
| Decodificar | createImageBitmap ou um elemento de imagem decodifica os pixels | Nenhum |
| Recodificar | Um OffscreenCanvas ou um elemento canvas cria um novo Blob | Nenhum |
| Verificar | O novo Blob é analisado outra vez | Nenhum |
| Baixar | Uma URL de objeto temporária aponta para o Blob local | Nenhum |
Ao concluir a limpeza ou clicar para baixar um arquivo, o site envia à própria origem um evento geral de uso com a ação e o idioma. Nenhum dado derivado da imagem faz parte desse evento.
Diagrama da arquitetura
- Arquivo localSeleção feita por você
- AnáliseAssinatura do arquivo e leitor de metadados
- DecodificaçãoPixels na memória do navegador
- RecodificaçãoO canvas cria um novo Blob
- VerificaçãoO novo Blob é analisado outra vez
- BaixarURL de objeto local e temporária
ARQUIVO LOCAL → verificação da assinatura → leitor de metadados → decodificador de imagem → pixels no canvas → novo Blob codificado → nova análise dos metadados → arquivo disponível para baixar. Nenhuma etapa envia o arquivo a um servidor.
Por que a recodificação remove metadados
O MetaRinse não copia o contêiner original. Ele decodifica o resultado visual e pede ao codificador do navegador que crie um novo Blob JPEG, PNG ou WebP. Assim, os blocos EXIF, XMP e IPTC do original não são repassados ao codificador. O novo Blob ainda é analisado, porque o comportamento precisa ser verificado, não apenas presumido.
Worker e modo alternativo
Quando o navegador oferece suporte a Web Worker, createImageBitmap e OffscreenCanvas, a leitura e a codificação acontecem fora da interface principal. Os arquivos são processados em sequência para controlar o uso de memória. Navegadores sem OffscreenCanvas usam um canvas isolado na thread principal. Ao cancelar, a fila é interrompida e os resultados inacabados são descartados.
Ciclo de vida das URLs de objeto
As prévias e os arquivos disponíveis para baixar usam URLs do tipo blob: que apontam para dados na memória do navegador. O MetaRinse revoga essas URLs quando um item é removido, os resultados são apagados ou a página é fechada. Arquivos e metadados não são gravados em localStorage, IndexedDB nem em uma conta.
O que os acessos normais ao site ainda revelam
Ao abrir o site, o navegador solicita HTML, JavaScript, CSS e fontes ao próprio domínio. Ao concluir uma operação em uma ferramenta ou clicar para baixar um arquivo, o navegador também envia um evento geral de uso à mesma origem; a Cloudflare acrescenta um código de país. Nenhuma solicitação inclui bytes, nomes, metadados, prévias, dimensões, tamanhos exatos ou hashes das imagens selecionadas.
Limitações e efeitos do processamento
- JPEG e WebP são recodificados usando compressão com perdas e o nível de qualidade escolhido.
- O PNG é gerado novamente, e perfis de cor incorporados podem ser alterados ou removidos.
- O tamanho do arquivo e pequenos detalhes dos pixels podem mudar.
- Metadados específicos de fabricantes podem não ser reconhecidos pelo analisador.
- Informações visíveis e nomes de arquivo precisam de uma revisão separada.
Fontes
Guias relacionados
A imagem não sai do seu dispositivo.