I code with AI all day, every day. But I do think that it's worth pointing to this issue (from March).
The author has said that they've redone it since, but the "from-scratch hand-built" framing specifically – for me – somewhat grates given the original heavy lifting from an existing AGPL codebase.
I want to acknowledge that the original authors don't seem to have minded too much – per that thread – after older versions were dropped.
For context, the current code doesn't look like it is the same shape, the same structure, etc., etc. – it _has_ been rewritten since (the 'since Feb' rewrite mentioned adjacent is related to this, AFAICT).
To the author: I absolutely love what you're doing overall. Keep going! Just be careful, folks.
isn't the post of someone who just implemented a js engine (it reads like someone who asked an LLM to write a blog post about the git log of a different LLM which was apparently lifting code from a different js engine...)
It's a bit hard to understand what's going on here, but definitely hard to trust the project.
OP, you will get a much better reception if you clarify that "hand built" just means you're not using existing libraries. It's a cool project, but it's disappointing to come in expecting to see a rare gem of a 100% human project in 2026 but it's really something else.
Honest question - does using claude code and steering it to type the code I want counts as hand-built? Like doing actual PRs, nit picking, basically treating it as a jr/product/typist while I'm the one making ALL the decisions? Reading every line and approving manually if it's a code that I would write?
No it does not count as hand built. In the same way that a human pressing buttons, such that an automated production line makes a watch, and then at the end a human goes and looks at it and says "yup that's a watch" isn't a hand-made watch.
In the age of LLMs we can assume that any code was generated by an LLM unless noted otherwise, so I think it is fair to not point out the use of LLMs. However, words like hand built should be reserved for the instances where the code was actually written unassisted. Reading all the code means nothing, there is no such thing as code that was written as if you had written it, unless you have written it.
Does using non AI code autocompletions and code templates makes your code non hand written? Because I think it’s based on same idea - “prediction of next word”. And sometimes with just few buttons pressed you get surprisely good lines.
Tangent but what a horrible website at least on my android. Starts as light mode, suddenly shows three streched columns, turns to dark mode and the title is hidden behind the header. After years of being around how can they end up with something like this
Whenever I'm bored, I go to the ant-design site to see how long it takes to find the first gross accessibility violation. This time it was the dropdown just above the fold, which wasn't keyboard controllable.
It is funny that people now instinctively think of AI when encountering slop, as if the slop that the AI produces was not deeply informed by the slop it trained on. Plus, the quality bar on the web has always been low, masking the true capability of LLMs.
I'm the first user and contributor to Apache Ant outside of Sun Microsystems when James gave it to me, and I could care less that someone else used the same name.
I'm not sure what the economics of building a new runtime and ecosystem from scratch are but it seems we're already in a phase where individual developers are creating software which previously took a whole team. And its only getting started...
Is that impressive? If an LLM is just spewing out code which it has been trained on extensively then to me it's not that impressive at all. I want to see individual developers creating new software which previously took a whole team. Things not done previously. I am very pro AI btw, but the constant barrage of false hype is really tiresome.
I thought I was the only person who remembered Apache Ant... I know we're running out of names but that was a really influential piece of infrastructure.
I’m not that deep in the JS ecosystem or runtimes, but I’m a little surprised by some of the claims here about being smaller, having fast starts, sandboxing, performance-competitive, etc.
Does anyone have a sense of what insights, design choices, big bets, etc, unlock all these advantages against already mature and highly optimised JS stacks?
This project appears to be an LLM-rewritten Elk (https://github.com/cesanta/elk), as noted elsewhere in the thread. That project was established in 2019.
The author also replied elsewhere in the thread that was the initial version but everything has since been deleted and the current version is built from ground up.
The thing that caught my eye immediately was the sandboxing. I have no idea why Node and npm don’t have sandboxing by default. It would greatly help with some of these worms and supply chain attacks.
The "VM-isolated sandbox" is apparently not referring to the JavaScript VM but to a hypervisor, according to the text a bit further down on the page. I wouldn't expect that to be particularly fast or efficient, especially not if you're already running in a VM and have to use nested virtualization (if it's even available).
Is it essentially implementing a paravirtualized OS that runs the JS runtime? Presumably you have to allocate the memory for the VM up front, or how does that work?
on linux its kvm, on darwin its hypervisor.framework, the memory is not upfront, by default 256mb is lazy allocated, and ~35mb are used by both ant + the vm. the kernel is https://nanos.org with patches to get ant+networking running smoothly
I get the runtime, the engine, and the colony as a monetization angle. What I don't get is:
- Another registry (looks like jsr.io)?
- Another package manager
- Ant Desktop?
- Sandboxes?
- treatjs (what even is that)?
I'd love to see a JS runtime that does one thing: run JavaScript. I don't get why everyone is aiming for an all-in-one toolbox. To me this project already seems convoluted.
Looks really good on the surface. But if you really want to sell it, link to a comprehensive benchmark suit and more comparisons. Because if you don't, people tend to (subconsciously) apply adverse inference.
I agree! It seems the author is already making thoughtful decisions on what to implement and what to drop. You kinda have to when it's a project of this scope.
Implementing, running, maintaining, scaling a module registry is probably not worth the time. Unless there's a clear technical requirement from the runtime. I would think there isn't since npm protocol compatibility is a stated goal/feature.
What's the fuzzing story? If this is meant to be a product, hopefully it's being fuzzed 24/7, using multiple state-of-the-art JavaScript fuzzers, against multiple state-of-the-art JavaScript engines?
Not OP, but WSL1 is still much more performant in some areas, like lower memory use, startup times, quicker windows file access. I haven't used WSL1 in quite some time but I believe it's also still fully supported so use what's better for your use case
This looks excellent. The sandboxing really stands out to me, and I think ant.land might have potential, since it has a lot of great features other registries lack.
Not everyone has 200mb node_modules. Many of us, indie JS makers making those libraries, care in fact about the size of our projects, runtimes, installed libraries, etc. I'd even argue it's more mainstream usage (e.g. even me, when I'm at work) where that is more shipping features than spending time in crafting nice tiny libraries/package. So I'd say JS authors caring about the small binaries is very understandable.
At least with bun you can compile with bytecode enabled. That, tree shaking and other optimizations our production app entire docker image is like 120mb...
The author has supposedly created a company (https://sf.tools/), with a broken /jobs page, and yet is developing the project under their personal GitHub account. Does not look trustworthy.
wow! i’ve been using deno for a long time, and one of my fav features is compiling a binary. i didn’t see anything about that, but might have missed something… do you all plan to support this?
Not really, there's some advantages if the viber is experienced in C.
1. When the LLM needs to figure out what functions exist, it reads only headers, not the actual implementation. IME the agent uses a fraction of tokens compared to vibing out a Java or C# project.
2. There's only a handful of common footguns in C (signed overflow, use-after-free, dereferencing NULL, etc) all of which are localised, compared to C++ which has all those C footguns plus non-localised footguns that can't be easily detected without knowing the entire program at once.
I have actually known* about Ant for some time from your previous submissions and its really interesting and I wish the project luck!
Do you think that Ant could be used to create a small index.html/css/js project into an desktop app minimally.
I currently found deno desktop which is pretty recent to be the easiest way of doing this for one of my projects (https://epub.mirror.forum) but I found there to be some issues within deno-desktop in terms of some features not working on the desktop app but I overall really like the idea of converting these files into desktop apps and I am wondering if ant could be suitable for that, so I am curious to hear what you think :-D
just got the thing for you actually! literally just finished a stable version last night, https://www.npmjs.com/package/ant-desktop. WIP still, chromium only renderer backend but webview and other backends coming soon as well. no local ant install needed as libant is bundled, when CI finishes ill have windows/linux builds too
Oh great! it seems, that great thinkers think alike :-D
Good to see that you are already working on it though, Good luck and I will hopefully try to keep a keen eye on the project for my use-cases when I need something more flexible than rust iced applications but also having a small footprint. It's good to see more competition within this space so good luck with that!
Hmm, the ants.land website in general isn't resolving for my desktop but it is resolving for my laptop, a bit strange.
It states: Server Not Found, Zen can’t connect to the server at ants.land
What can you do about it? Try connecting on a different device. Check your modem or router. Disconnect and reconnect to Wi-Fi.
yet my laptop which also uses zen which is also connected to the same Wi-Fi resolves the page so I am not sure.
Oh I think that I might be getting it now but I had an custom nextdns profile set up on my browser using nextdns with some more aggressive setups using typosquatting protection etc.
It seems that changing the dns setting made it resolve and afterwards even going back to the same profile is now (resolving it again?) [Could it be that the domain is now cached not needing to go to the dns provider] but I guess that I wouldn't blame you guys about it so much and just wanted to inform y'all of it :-D
> ive seen that happen to .land
interesting, is there any reason behind DNS/(ISP?) providers blocking .land domains?
The author has said that they've redone it since, but the "from-scratch hand-built" framing specifically – for me – somewhat grates given the original heavy lifting from an existing AGPL codebase.
https://github.com/cesanta/elk/issues/75
I want to acknowledge that the original authors don't seem to have minded too much – per that thread – after older versions were dropped.
For context, the current code doesn't look like it is the same shape, the same structure, etc., etc. – it _has_ been rewritten since (the 'since Feb' rewrite mentioned adjacent is related to this, AFAICT).
To the author: I absolutely love what you're doing overall. Keep going! Just be careful, folks.
isn't the post of someone who just implemented a js engine (it reads like someone who asked an LLM to write a blog post about the git log of a different LLM which was apparently lifting code from a different js engine...)
It's a bit hard to understand what's going on here, but definitely hard to trust the project.
around feb thats when basically deleted the existing codebase and designed a much more reliable system from the ground up.
I knew the existing code was basically pure slop, and it was not the biggest issue then, now nothing goes past me unreviewed and untested
> To the author: I absolutely love what you're doing overall. Keep going! Just be careful, folks.
Thank you!
So it's not hand-built?
I, at the very least, need a keyboard.
https://ant.design/
Some people have also heard of ants of the formicidaen variety.
And then the follow up few months later: https://themackabu.dev/blog/ant-part-two
I'm not sure what the economics of building a new runtime and ecosystem from scratch are but it seems we're already in a phase where individual developers are creating software which previously took a whole team. And its only getting started...
There is no shame in saying it's generated, bun is now completely vibe code also.
Saying it's hand built when it's not is false advertising
I would assume by now most of the code published on Github is hand-built with LLM prompts and armies of AI agents.
• (ant) https://github.com/anthropics/anthropic-cli
• (claude) https://github.com/anthropics/claude-code
Does anyone have a sense of what insights, design choices, big bets, etc, unlock all these advantages against already mature and highly optimised JS stacks?
But okay, it’s not the fastest kid on the block; although “X but faster” isn’t the most compelling argument to adopt a new runtime.
As to the choices this project made: well, Claude or Codex seems to have chosen to copy large parts of the Elk codebase.
He forgot to scrub the vendor ID field.
But according to zoo.js benchmarks that is far from the case:
https://zoo.js.org/
Unless there were major perf gains since 2026-02-10?
nightly will include benchmarks soon as well
Does `antx` executions are sandboxed by default using `ant:sandbox`?
- Another registry (looks like jsr.io)? - Another package manager - Ant Desktop? - Sandboxes? - treatjs (what even is that)?
I'd love to see a JS runtime that does one thing: run JavaScript. I don't get why everyone is aiming for an all-in-one toolbox. To me this project already seems convoluted.
Lots of frontend devs (and vibe coders) just want a "deploy my code" service.
I'd love to see if I can integrate it onto Edge.js for full Node.js support ( https://edgejs.org )
Implementing, running, maintaining, scaling a module registry is probably not worth the time. Unless there's a clear technical requirement from the runtime. I would think there isn't since npm protocol compatibility is a stated goal/feature.
https://github.com/theMackabu/ant/actions/runs/29167621329.
im very sorry everyone who tried to install and got a libcares error :(
I know some folks love the "purity" of WSL 1 but it's really hard to recommend if you care at all about Linux compatibility.
Failure to do so certainly makes me think the new project isn't very serious.
How is it so much smaller than V8 while also apparently including a package manager, a web server, a TypeScript compiler and a hypervisor?
Much less complex tiers of jit, no unicode ICU, and no startup js snapshot
what are you implying specifically ?
Is antjs coded in plain and simple C?
Odd choice for a vibecoded project.
Not really, there's some advantages if the viber is experienced in C.
1. When the LLM needs to figure out what functions exist, it reads only headers, not the actual implementation. IME the agent uses a fraction of tokens compared to vibing out a Java or C# project.
2. There's only a handful of common footguns in C (signed overflow, use-after-free, dereferencing NULL, etc) all of which are localised, compared to C++ which has all those C footguns plus non-localised footguns that can't be easily detected without knowing the entire program at once.
Do you think that Ant could be used to create a small index.html/css/js project into an desktop app minimally.
I currently found deno desktop which is pretty recent to be the easiest way of doing this for one of my projects (https://epub.mirror.forum) but I found there to be some issues within deno-desktop in terms of some features not working on the desktop app but I overall really like the idea of converting these files into desktop apps and I am wondering if ant could be suitable for that, so I am curious to hear what you think :-D
Good to see that you are already working on it though, Good luck and I will hopefully try to keep a keen eye on the project for my use-cases when I need something more flexible than rust iced applications but also having a small footprint. It's good to see more competition within this space so good luck with that!
It states: Server Not Found, Zen can’t connect to the server at ants.land What can you do about it? Try connecting on a different device. Check your modem or router. Disconnect and reconnect to Wi-Fi.
yet my laptop which also uses zen which is also connected to the same Wi-Fi resolves the page so I am not sure.
It seems that changing the dns setting made it resolve and afterwards even going back to the same profile is now (resolving it again?) [Could it be that the domain is now cached not needing to go to the dns provider] but I guess that I wouldn't blame you guys about it so much and just wanted to inform y'all of it :-D
> ive seen that happen to .land
interesting, is there any reason behind DNS/(ISP?) providers blocking .land domains?
tbh have not seen any reason behind it, just saw my ants.land get blocked a office firewall once while demoing
Holy crap, V8 is that big now? Very interested in this for embedding purposes.
V8 21M, Score 47285, ES6 98%
Ant 4.3M, >>> Score 69 <<<, ES6 50%