Ant, runtime JavaScript leve e ecossistema
(antjs.org)- Executa pacotes npm reais com o Ant Silver Engine, desenvolvido internamente, destacando-se por um binário único de cerca de 8,6 MB e inicialização rápida
- Não é uma estrutura que envolve V8, JSC ou SpiderMonkey; indica 100% no compat-table e conformidade com WinterTC, além de oferecer suporte a Hono, Elysia, TypeScript, React, Rolldown, Wasm e outros
- Em uma medição de cold start que carrega o Hono, registra 2 rotas e encerra, registrou 5,4 ms, menos que Bun com 12,8 ms, Deno com 24,8 ms e Node.js com 31,1 ms
- Instala pacotes até 40 vezes mais rápido que o npm, e não exige build separado nem adaptador de framework graças à execução direta de TypeScript e ao serviço do export
fetchpadrão - Oferece um sandbox com isolamento por VM para código não confiável e o registro público ants.land compatível com o protocolo npm; pode ser usado em arm64 e x86_64 no macOS e Linux sem toolchain separada
Engine própria e fluxo de desenvolvimento rápido
- Ant é um runtime JavaScript de alto desempenho construído do zero, distribuído como um binário único portátil de cerca de 8,6 MB que inclui o Ant Silver Engine
- Não é um wrapper baseado em V8, JSC ou SpiderMonkey
- Registra 100% no compat-table e é indicado como WinterTC Conformant
- Executa os ecossistemas Hono, Elysia, TypeScript, React, Rolldown, WinterTC e Wasm
-
Desempenho de cold start
- Carrega o Hono, registra 2 rotas e encerra, medindo apenas o custo de resolução e inicialização de módulos
- Ant: 5,4 ms
- Bun: 12,8 ms
- Deno: 24,8 ms
- Node.js: 31,1 ms
-
Instalação de pacotes
- É possível instalar pacotes com o comando
ant i hono; no exemplo, a instalação de 1 pacotehono@latesttermina em 155 ms - Destaca velocidade de instalação até 40 vezes maior que a do npm, sem necessidade de configurar uma ferramenta separada de gerenciamento de pacotes
- É possível instalar pacotes com o comando
-
Servidor e execução de TypeScript
- Como serve o export
fetchpadrão do arquivo como servidor, frameworks como Hono podem ser executados sem adaptador- Ao executar com
ant server.js, no exemplo padrão ele escuta emhttp://localhost:3000
- Ao executar com
- Arquivos TypeScript podem ser executados diretamente com
ant app.ts- Não são necessários ajustes de
tsconfig, bundler, diretóriodistnem a etapatsc && node dist/app.js
- Não são necessários ajustes de
- Como serve o export
Execução isolada e ecossistema de pacotes
-
Sandbox baseado em VM
- O
Sandboxdeant:sandboxexecuta JavaScript não confiável dentro de uma fronteira de isolamento por VM, indo além de uma simples verificação de permissões - Cada sandbox usa uma VM KVM ou Hypervisor.framework independente
- Montagens do sistema de arquivos permanecem somente leitura, a menos que permissão de escrita seja concedida explicitamente
- A rede é bloqueada por padrão, e apenas as portas especificadas são encaminhadas
- O
-
Registro público de pacotes
- ants.land é um registro público de pacotes para Ant
- Usa o protocolo npm, permitindo acesso não só pelo Ant, mas também por npm, Yarn, pnpm e Bun
- Pacotes são instalados por escopo ou nome comum, e também podem ser usados no navegador por meio de
esm.ants.land - Faça login com
ant land logine publique pacotes comant land publish - As informações do registro incluem uma pontuação de 0 a 100 que reflete documentação, licença e compatibilidade
- Oferece suporte a arm64 e x86_64 no macOS e Linux, sem necessidade de toolchain separada
1 comentários
Comentários do Hacker News
Eu programo com IA o dia todo, todos os dias, mas acho que esta questão, levantada em março passado, ainda vale ser considerada
Mesmo que o código tenha sido reescrito depois, dizer que foi “feito do zero” incomoda um pouco, já que a base de código AGPL existente representou uma parte significativa do trabalho inicial
Pelo que consta na thread, depois que a versão antiga foi descartada, os autores originais não pareceram se importar muito, e o código atual parece de fato ter sido reescrito, com forma e estrutura diferentes. No geral, gosto muito do trabalho, então sigam em frente, mas todos precisam ter cuidado
Dá a impressão de que pegaram o histórico de commits de um LLM que aparentemente trouxe código de outros motores JavaScript e pediram a outro LLM que transformasse isso em um post de blog; é difícil até entender o que aconteceu, e mais difícil ainda confiar no projeto
Por volta de fevereiro, a base de código anterior foi praticamente apagada e um sistema muito mais confiável foi projetado do zero. Eu sabia que o código daquela época era quase inteiramente geração de IA de baixa qualidade, mas isso não era a maior prioridade; hoje, nenhum código passa sem revisão e testes
Já existe o Ant da Apache, então fico me perguntando por que chamaram de Ant em vez de “Antjs” ou “Ant.js”: https://ant.apache.org
O processo de criar a primeira versão em um mês está no primeiro texto, e o acompanhamento alguns meses depois está no segundo texto
Não sei se faz sentido economicamente criar um novo runtime e ecossistema do zero, mas parece que já entramos numa fase em que um software que antes exigia uma equipe inteira agora pode ser feito por um único desenvolvedor, e isso é só o começo
Quero ver desenvolvedores solo criando software realmente novo, algo que nem equipes conseguiam fazer antes. Sou muito favorável à IA, mas já estou cansado da promoção exagerada constante
Eu brinquei que a CLI
antda Anthropic não estava nem aí para o Apacheant, e agora apareceu até oantdo JavaScriptantda AnthropicNão conheço profundamente o ecossistema JavaScript nem runtimes, mas fiquei um pouco surpreso ao ver promessas de tamanho menor, inicialização rápida, sandboxing e desempenho competitivo ao mesmo tempo
Fico curioso sobre qual seria a sacada central ou escolha de design que torna possível obter essas vantagens em relação a stacks JavaScript já maduras e altamente otimizadas, qual foi a grande aposta técnica
Talvez não seja o mais rápido, mas é difícil adotar um novo runtime só porque ele é “mais rápido que X”. As escolhas de design deste projeto parecem ser resultado de Claude ou Codex copiando grandes partes da base de código do Elk
Entendo o runtime, o motor e a monetização via Colony, mas não sei se precisava também de um registro separado, um gerenciador de pacotes separado, Ant Desktop, sandbox, e ainda esse treatjs de identidade duvidosa
Se é um runtime JavaScript, eu preferiria que fizesse uma única coisa, executar JavaScript, e a fizesse bem; fico me perguntando por que todo mundo quer virar uma caixa de ferramentas integrada, e este projeto já parece complexo demais
Dizem que está em velocidade próxima à do V8, mas no benchmark do zoo.js isso parece estar bem longe: https://zoo.js.org/
A menos que o desempenho tenha melhorado drasticamente desde 10 de fevereiro de 2026, essa afirmação não parece correta
Na época, ele funcionava majoritariamente como interpretador e ainda faltavam várias operações de JIT; em breve, pretendemos incluir benchmarks também nas builds nightly
A primeira coisa que me chamou atenção foi o sandboxing. Não sei por que Node e npm não oferecem isso por padrão; ajudaria bastante a reduzir worms e ataques à cadeia de suprimentos
Se você já estiver rodando dentro de uma máquina virtual e ainda precisar de virtualização aninhada, nem está claro se haverá suporte, e também não parece algo que vá ser rápido ou eficiente
Fiquei curioso sobre qual é a fonte serifada usada no site. Parece que renomearam para
ant_serife removeram todos os outros identificadores, mas ela é bem bonitaHá benchmark de cold start, mas por que não existe comparação de desempenho de execução com Node, Deno, Bun, QuickJS etc.?