- Läuft mit der selbst entwickelten Ant Silver Engine mit echten npm-Paketen und wirbt mit einem einzelnen Binärprogramm von rund 8,6 MB sowie schnellem Start
- Baut nicht als Wrapper um V8, JSC oder SpiderMonkey auf, weist 100 % in der compat-table aus, ist WinterTC-konform und unterstützt Hono, Elysia, TypeScript, React, Rolldown und Wasm
- Bei einer Cold-Start-Messung, die Hono lädt, zwei Routen registriert und dann beendet, wurde mit 5,4 ms ein kürzerer Wert als bei Bun mit 12,8 ms, Deno mit 24,8 ms und Node.js mit 31,1 ms erreicht
- Installiert Pakete im Vergleich zu npm um bis zu 40-mal schneller; durch die direkte Ausführung von TypeScript und das Bereitstellen des Standard-
fetch-Exports als Server sind weder zusätzlicher Build noch Framework-Adapter nötig - Bietet eine VM-isolierte Sandbox für nicht vertrauenswürdigen Code sowie mit ants.land ein öffentliches, mit dem npm-Protokoll kompatibles Registry und kann auf macOS und Linux für arm64 und x86_64 ohne separates Toolchain genutzt werden
Eigene Engine und schneller Entwicklungsfluss
- Ant ist eine von Grund auf entwickelte hochperformante JavaScript-Laufzeit und wird als portables Einzel-Binärprogramm von etwa 8,6 MB inklusive der Ant Silver Engine ausgeliefert
- Kein Wrapper auf Basis von V8, JSC oder SpiderMonkey
- Erreicht 100 % in der compat-table und ist als WinterTC Conformant gekennzeichnet
- Führt die Ökosysteme von Hono, Elysia, TypeScript, React, Rolldown, WinterTC und Wasm aus
-
Cold-Start-Leistung
- Es werden nur die Kosten für Modulauflösung und Initialisierung gemessen, indem Hono geladen, zwei Routen registriert und anschließend beendet wird
- Ant: 5,4 ms
- Bun: 12,8 ms
- Deno: 24,8 ms
- Node.js: 31,1 ms
-
Paketinstallation
- Pakete lassen sich mit dem Befehl
ant i honoinstallieren; im Beispiel war die Installation vonhono@latestin 155 ms abgeschlossen - Es wird mit einer bis zu 40-mal schnelleren Installation als bei npm geworben, ohne dass ein separates Paketverwaltungswerkzeug eingerichtet werden muss
- Pakete lassen sich mit dem Befehl
-
Server und TypeScript-Ausführung
- Der Standard-
fetch-Export einer Datei wird als Server bereitgestellt, sodass Frameworks wie Hono ohne Adapter ausgeführt werden können- Beim Start mit
ant server.jslauscht das Standardbeispiel aufhttp://localhost:3000
- Beim Start mit
- TypeScript-Dateien können direkt mit
ant app.tsausgeführt werden- Weder Anpassungen an
tsconfignoch ein Bundler, eindist-Verzeichnis oder ein Schritt wietsc && node dist/app.jssind erforderlich
- Weder Anpassungen an
- Der Standard-
Isolierte Ausführung und Paket-Ökosystem
-
VM-basierte Sandbox
Sandboxausant:sandboxführt nicht vertrauenswürdiges JavaScript nicht nur mit einfachen Berechtigungsprüfungen aus, sondern innerhalb einer VM-Isolationsgrenze- Jede Sandbox verwendet eine eigene KVM- oder Hypervisor.framework-VM
- Dateisystem-Mounts bleiben schreibgeschützt, sofern Schreibrechte nicht ausdrücklich vergeben werden
- Netzwerkzugriffe sind standardmäßig vollständig blockiert; nur angegebene Ports werden weitergeleitet
-
Öffentliches Paket-Registry
- ants.land ist ein öffentliches Paket-Registry für Ant
- Es verwendet das npm-Protokoll und ist dadurch nicht nur mit Ant, sondern auch mit npm, Yarn, pnpm und Bun erreichbar
- Pakete werden mit Scope oder normalem Namen installiert und können über
esm.ants.landauch im Browser genutzt werden - Die Anmeldung erfolgt mit
ant land login, veröffentlicht wird mitant land publish - Registry-Informationen enthalten eine Bewertung von 0 bis 100, die Dokumentation, Lizenz und Kompatibilität widerspiegelt
- Unterstützt arm64 und x86_64 auf macOS und Linux und benötigt kein separates Toolchain
1 Kommentare
Hacker-News-Kommentare
Ich code jeden Tag den ganzen Tag mit AI, aber ich denke, dieses Problem, das im letzten März aufkam, ist es wert, angesprochen zu werden
Selbst wenn der Code danach neu geschrieben wurde, wirkt die Formulierung „von Grund auf selbst gebaut“ etwas störend, wenn man bedenkt, dass die bestehende AGPL-Codebasis einen erheblichen Teil der frühen Arbeit ausmachte
Dem Thread zufolge scheinen die ursprünglichen Autoren keine großen Einwände zu haben, nachdem die alte Version verworfen wurde, und der aktuelle Code unterscheidet sich in Form und Struktur, sodass er tatsächlich neu geschrieben zu sein scheint. Insgesamt gefällt mir die Arbeit wirklich sehr, also macht weiter, aber alle sollten vorsichtig sein
Es entsteht eher der Eindruck, als hätte man ein LLM-Git-Log, das offenbar Code aus anderen JavaScript-Engines übernommen hat, von einem anderen LLM zu einem Blogbeitrag ausformulieren lassen; dadurch ist schwer zu verstehen, was eigentlich passiert ist, und dem Projekt zu vertrauen ist noch schwerer
Etwa im Februar wurde die bestehende Codebasis praktisch gelöscht und ein deutlich vertrauenswürdigeres System von Grund auf neu entworfen. Mir war bewusst, dass der damalige Code fast vollständig aus minderwertigen AI-Erzeugnissen bestand, aber das hatte nicht die höchste Priorität; inzwischen wird strikt darauf geachtet, dass kein Code ohne Review und Tests durchgeht
Es gibt bereits Apache Ant, also frage ich mich, warum es Ant heißt und nicht „Antjs“ oder „Ant.js“: https://ant.apache.org
Der Prozess, in dem die erste Version in nur einem Monat entstand, steht im ersten Beitrag, und die Fortsetzung einige Monate später im zweiten Beitrag
Ich weiß nicht, ob es wirtschaftlich sinnvoll ist, eine neue Runtime und ein neues Ökosystem komplett von Grund auf aufzubauen, aber wir scheinen bereits an einem Punkt angekommen zu sein, an dem ein einzelner Entwickler Software baut, für die früher ein ganzes Team nötig gewesen wäre, und das ist wohl erst der Anfang
Ich möchte sehen, wie einzelne Entwickler neue Software bauen, die zuvor selbst Teams nicht schaffen konnten. Ich bin AI gegenüber sehr aufgeschlossen, aber vom ständigen Hype-Marketing inzwischen völlig ermüdet
Ich habe noch darüber gewitzelt, dass Anthropic mit seiner
ant-CLI offenbar Apacheantignoriert, und jetzt gibt es auch noch JavaScript-antant-CLI von Anthropic benutztIch kenne mich im JavaScript-Ökosystem oder bei Runtimes nicht besonders tief aus, aber es hat mich etwas überrascht, dass hier gleichzeitig kleinere Größe, schneller Start, Sandboxing und konkurrenzfähige Performance versprochen werden
Mich würde interessieren, welche zentralen Einsichten oder Designentscheidungen beziehungsweise welcher große technische Hebel diese Vorteile gegenüber bereits ausgereiften und hochoptimierten JavaScript-Stacks möglich machen soll
Es ist vielleicht nicht das Schnellste, aber nur weil etwas „schneller als X“ ist, führt man nicht gleich eine neue Runtime ein. Die Designentscheidungen dieses Projekts wirken eher wie das Ergebnis davon, dass Claude oder Codex große Teile der Elk-Codebasis kopiert haben
Ich verstehe die Monetarisierung über Runtime, Engine und Colony, aber ich weiß nicht, ob man wirklich auch noch eine eigene Registry, einen eigenen Paketmanager, Ant Desktop, Sandboxing und dieses rätselhafte treatjs braucht
Von einer JavaScript-Runtime würde ich mir wünschen, dass sie eine Sache gut macht: JavaScript ausführen; ich frage mich, warum alle auf einen integrierten Werkzeugkasten hinauswollen, und dieses Projekt wirkt jetzt schon komplex
Es heißt „nahe an V8-Geschwindigkeit“, aber im zoo.js-Benchmark scheint das sehr weit davon entfernt zu sein: https://zoo.js.org/
Falls sich die Performance seit dem 10. Februar 2026 nicht massiv verbessert hat, trifft diese Aussage nicht zu
Damals lief sie größtenteils noch als Interpreter, mehrere JIT-Operationen fehlten noch, und Benchmarks sollen bald auch in die Nightly-Builds aufgenommen werden
Das Erste, was mir ins Auge sprang, war das Sandboxing. Ich verstehe nicht, warum Node und npm das nicht standardmäßig mitbringen; das würde Würmer und Supply-Chain-Angriffe deutlich reduzieren
Wenn man ohnehin schon in einer virtuellen Maschine läuft und dafür verschachtelte Virtualisierung bräuchte, ist nicht einmal sicher, ob das unterstützt wird, und schnell oder effizient dürfte es auch kaum sein
Ich frage mich, welche Serifenschrift auf der Website verwendet wird. Offenbar hat man sie in
ant_serifumbenannt und alle anderen Kennungen entfernt, aber sie sieht ziemlich gut ausEs gibt Cold-Start-Benchmarks, aber warum gibt es keine Ausführungs-Performance-Benchmarks im Vergleich mit Node, Deno, Bun, QuickJS und anderen?