Site lento por causa do JavaScript?
Deixe um script mais leve sem montar um processo de build: no exemplo, uma linha de comentário e uma função recuada viram uma só linha, function suma(a,b){return a+b;}, sem o comentário e com todos os nomes intactos. Grátis no seu navegador.
- Grátis
- Funciona no seu navegador
- Sem cadastro
- Seus dados não saem do seu aparelho
Executar grátis
Exemplo resolvido
- JavaScript minificado
- // suma function suma(a, b) { return a + b; }
- JavaScript minificado
- function suma(a,b){return a+b;}
Minificador de JavaScript que roda no seu navegador: cole o código e ele volta sem espaços, comentários e quebras de linha desnecessárias — pronto para produção. O comportamento do script não muda; o peso, sim.
Minificar, comprimir, ofuscar: cada coisa é uma coisa
Minificar é tirar do arquivo tudo o que o motor JavaScript ignora: espaços, quebras de linha e comentários. Comprimir (gzip, por exemplo) é o servidor empacotar o arquivo para a viagem — as duas técnicas se combinam. Já ofuscar é reescrever o código para dificultar a leitura, o que é outro objetivo e outra ferramenta.
Aqui o foco é o primeiro passo: o mesmo script, com o mesmo comportamento, em bem menos bytes. Ninguém precisa mudar uma linha de código para colher o ganho.
O peso do JS é o peso que o celular sente
Diferente de imagem, JavaScript não é só download: depois de baixado, ele precisa ser interpretado e executado, e é aí que aparelhos mais simples sofrem. Em um site acessado majoritariamente pelo celular — a realidade brasileira —, cada kilobyte de script cobra duas vezes: na rede e no processador. Minificar reduz a primeira conta na hora e ajuda indiretamente na segunda, porque o arquivo chega antes.
Os relatórios de Core Web Vitals e do PageSpeed tratam isso como item básico de otimização.
Passo a passo
Cole o código JavaScript na caixa e execute: o resultado sai pronto para copiar ou baixar. Tudo roda dentro do seu navegador — o script não é enviado a servidor nenhum, sem limite de uso e sem cadastro. Uma recomendação de quem publica com frequência: mantenha o arquivo legível no seu controle de versão e gere o minificado só na hora de subir.
Assim você nunca edita a versão compacta por engano, um erro clássico que custa horas de depuração.
Minificação sem montar um processo de build
Quem já usa bundler provavelmente minifica com plugins locais — e está ótimo. Sem assinatura: cada chamada é cobrada individualmente, o que para volumes pequenos sai mais barato do que manter infraestrutura própria.
Casos de uso
Script legado sem ferramenta de build
Carlos herdou o site de um cliente com um main.js de dez anos, editado direto no FTP. Sem Node nem bundler no projeto, ele minifica pela ferramenta antes de cada ajuste publicado e mantém o original comentado no computador.
Plugin do WordPress ajustado
Márcia adaptou o script de um plugin no tema filho do e-commerce. Antes de subir, cola o arquivo na ferramenta e publica a versão leve — o site vende principalmente pelo celular, onde cada kilobyte pesa.
Perguntas frequentes
Tem risco de o script parar de funcionar?
Se o código é JavaScript válido, o comportamento continua idêntico: só saem espaços, quebras de linha e comentários. Atenção a um caso clássico: código que depende de ponto e vírgula automático em linhas específicas já é frágil por natureza — teste o resultado como testaria qualquer publicação.
Isso protege meu código de cópia?
Não. Minificar dificulta um pouco a leitura, mas qualquer pessoa consegue reformatar o arquivo em segundos. Se a preocupação é propriedade intelectual, o caminho é outro (ofuscação, licenciamento) — não prometemos essa proteção aqui.
O que acontece com o código que eu colo?
Na ferramenta da página, nada sai do seu navegador: o processamento é local e a gente não vê nem armazena o seu script. É o modo recomendado para código fechado de cliente.
A ferramenta muda os nomes das minhas variáveis?
Não. Os nomes ficam exatamente como você escreveu; só saem os comentários, as quebras de linha e os espaços ao redor dos símbolos. No exemplo, suma, a e b mantêm os nomes e a função inteira cabe em uma linha.
O que exatamente é removido do código?
Os comentários, o recuo das linhas e os espaços e quebras de linha em volta de símbolos como chaves, parênteses, vírgulas e operadores. O que o script faz continua escrito do mesmo jeito, apenas mais junto.
Ferramentas relacionadas
Para desenvolvedores — acesso via API
Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.
Endpoint
Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.
Chame do seu código
curl -X POST https://api.kit.forhosting.com/data/js-minify \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"js":"const a = 1; // nota\nconst b = 2;"}'const res = await fetch("https://api.kit.forhosting.com/data/js-minify", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"js": "const a = 1; // nota\nconst b = 2;"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/data/js-minify",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"js": "const a = 1; // nota\nconst b = 2;"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/data/js-minify", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"js":"const a = 1; // nota\\nconst b = 2;"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"js":"const a = 1; // nota\nconst b = 2;"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/data/js-minify", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemplo de requisição
{
"js": "const a = 1; // nota\nconst b = 2;"
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "data.js_minify",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.
Preço
Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.
Limites
max_mb | 25 |
Erros
| HTTP | Código | O que significa |
|---|---|---|
401 | unauthorized | Token ausente ou inválido. Confira o header Authorization. |
402 | insufficient_balance | Saldo insuficiente para esta tarefa. Faça uma recarga e tente de novo. |
404 | unknown_type | Esse tipo de tarefa não existe. Confira o campo type no catálogo. |
429 | rate_limited | Muitas requisições em pouco tempo. Espere um instante e tente de novo. |
Notas técnicas
Grátis, sem cadastro, e disponível via API para integrar ao seu processo de publicação.
Sem esteira de build? A API resolve
A API entra quando não há build: sites legados, scripts gerados dinamicamente, CMS que aceita upload manual, automações que montam páginas em produção. Você envia o JS por HTTP, recebe a versão enxuta e paga US$ 0,002 por chamada, com limite de 25 MB por arquivo.
Casos de integração
Landing page de campanha
Uma agência sobe landing pages que vivem poucas semanas. Não compensa montar build para cada uma: o JS de cada página passa pela API no momento da publicação e sai do forno já minificado.
Widget embarcado em site de terceiros
A TecnoSul distribui um widget de atendimento que os clientes colam nos próprios sites. O arquivo é minificado via API a cada versão nova, porque um script embarcado pesado prejudica o site de quem instala.
Perguntas técnicas
Quanto custa e como funciona a cobrança da API?
US$ 0,002 por chamada, com arquivos de até 25 MB. Não tem mensalidade nem pacote mínimo: você paga pelo que usar, e o preço fica publicado na página.
Tem que criar conta ou fazer login em algum momento?
Não — no navegador o uso é livre, e na API por enquanto não existe cadastro: a compra é direta e quem atende é gente de verdade, em espanhol ou inglês (pode escrever em português que dá certo).
Serve para minificar JSON ou CSS também?
Esta página cuida só de JavaScript. O KIT tem ferramentas próprias para CSS e JSON, com a mesma lógica: grátis no navegador, API por uso.