DevToolPal
PT

Minificador de JavaScript e CSS

Minifique JavaScript com Terser e CSS com CSSO para reduzir o tamanho dos arquivos, direto no seu navegador.

Roda localmente, nada é enviado

Opções

Linguagem

Entrada

0 caracteres · 0 B

Saída

0 caracteres · 0 B

O que faz

A minificação remove tudo de que o navegador não precisa para executar o seu código: espaços em branco, quebras de linha, comentários e nomes longos. Arquivos menores baixam mais rápido, o que melhora o tempo de carregamento da página e as Core Web Vitals, principalmente em redes móveis.

Esta ferramenta minifica JavaScript com o Terser, o minificador usado pelo webpack, Rollup e Vite, e CSS com o CSSO, que também reestrutura as folhas de estilo: encurta cores (#ffffff para #fff), remove unidades e valores redundantes (0px 0px para 0) e mescla regras que compartilham seletores ou declarações.

Como usar

  1. Cole o código no campo Entrada, solte um arquivo .js ou .css sobre ele ou clique em Exemplo.
  2. Escolha JavaScript ou CSS.
  3. Em JavaScript, Encurtar nomes de variáveis renomeia variáveis locais e parâmetros para letras únicas. Nomes exportados e globais nunca são alterados.
  4. Em CSS, Mesclar regras duplicadas combina regras com as mesmas declarações.
  5. Copie o resultado ou baixe-o. Os contadores de tamanho embaixo de cada campo mostram quanto você economizou.

Se o JavaScript tiver um erro de sintaxe, a mensagem de erro mostra a linha e a coluna para você ir direto até ele.

Exemplo

// Sum the price of every item
export function cartTotal(items, discountPercent = 0) {
  const subtotal = items.reduce(function (sum, item) {
    return sum + item.price * item.quantity
  }, 0)
  return subtotal * (1 - discountPercent / 100)
}

vira

export function cartTotal(t,r=0){return t.reduce(function(t,r){return t+r.price*r.quantity},0)*(1-r/100)}

Quando usar

Use-a para algo rápido e pontual: um trecho para uma CDN, um script inline em um e-mail HTML, um bookmarklet ou para ver o quanto uma biblioteca pode encolher. Em um projeto de verdade, o seu bundler deve minificar a cada build para que o código-fonte continue legível.

Perguntas frequentes

› Meu código é enviado para algum lugar?

Não. O Terser e o CSSO rodam dentro do seu navegador, então código-fonte proprietário nunca sai do seu dispositivo.

› A minificação pode quebrar meu JavaScript?

O Terser só aplica transformações que mantêm o mesmo comportamento para código válido. Código que depende de nomes de funções ou variáveis em tempo de execução (por exemplo via Function.name) pode ser afetado pelo encurtamento de nomes; nesse caso, desative "Encurtar nomes de variáveis".

› Por que "Mesclar regras duplicadas" é opcional no CSS?

Mesclar move declarações entre regras. Isso é seguro em quase toda folha de estilo, mas se o seu CSS depende da ordem exata de regras com a mesma especificidade, desativar a opção garante a ordem original.

› Quais comentários são mantidos?

Com "Manter comentários de licença" ativado, os comentários que começam com /*! ou contêm @license ou @preserve permanecem, como a maioria das licenças de código aberto exige. Todos os outros comentários são removidos.