Show HN: Ant – A JavaScript runtime and ecosystem

324 points
1/21/1970
2 days ago
by theMackabu

Comments


tekacs

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.

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.

2 days ago

magicalist

Ok, but this post: https://themackabu.dev/blog/js-in-one-month

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.

2 days ago

dminik

Apparently prompting LLMs is now "survival mode".

2 days ago

theMackabu

this was flagging code from all the way back in dec of 2025, back when this project was just some idea and not what it is today.

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!

2 days ago

nhinck2

> now nothing goes past me unreviewed and untested

So it's not hand-built?

2 days ago

reasonableklout

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.

2 days ago

[deleted]
11 hours ago

pier25

This 100%

2 days ago

yard2010

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?

2 days ago

lionkor

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.

2 days ago

Kiro

Nice opinion but it's clearly a spectrum and not binary. Is assembling machine-made components by hand to make a watch hand-made?

2 days ago

[deleted]
2 days ago

nhinck3

I don't call my Ikea furniture hand-built.

2 days ago

[deleted]
2 days ago

bendmorris

You're not making all the decisions in that case. You're making approvals and steering but the agent is making decisions and is framing what is even available to you to approve. When you build something by hand, you make decisions as you go in a way that the agent is now replacing.

2 days ago

glaslong

Directly equivalent to having outsourced it to a shop of remote consultants where you remained as onshore lead. And in all those past cases we would have said "No."

2 days ago

incrudible

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.

2 days ago

Lerc

What is?

I, at the very least, need a keyboard.

2 days ago

lthi747

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.

2 days ago

alienbaby

Unreviewed, untested, understood?

2 days ago

lucb1e

Why call it "Ant" and not "Antjs" or "Ant.js" when there is already Ant from Apache? https://ant.apache.org

2 days ago

girvo

Ant in JS land is already claimed and huge too lol

https://ant.design/

2 days ago

armanckeser

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

2 days ago

SebastianKra

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.

2 days ago

KaiMagnus

I bounced when I saw the three broken columns but never even saw the dark mode switch. It’s that slow.

2 days ago

scabby

Completely broken on iOS as well. Feels like AI slop.

2 days ago

girvo

It's existed for a lot longer than LLM generated code has

2 days ago

doodlesdev

It's gotten much worse than I used to remember it, though. It used to be pretty bad before too, but it at least had an ok homepage.

2 days ago

girvo

It was always far too buggy for my liking as-is, though it’s amusing that somehow that’s become worse over time it seems

2 days ago

incrudible

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.

2 days ago

rileytg

ant design is a design system that the marquee title is underneath the top nav. it has at least three major fousc on mobile dark mode ios page load. both are clasic blunders documented and well solved since early bootstrap era. hardly a project worth owning “ant” in the js ecosystem.

apache ant (another neat tool) is from the java ecosystem (and can be used outside of it) that has largely been replaced by maven, which is gradually being replaced gradle.

this project seems to only overlap with either in that it uses javascript (or the word java).

2 days ago

hnlmorg

There’s also Adam Ant. Who was also a household name.

Some people have also heard of ants of the formicidaen variety.

2 days ago

girvo

Yes because those are in the same web development/javascript adjacent vertical, of course!

2 days ago

hnlmorg

Neither is Apache Ant not Anthropic CLI yet they’re cited a lot in this discussion too.

2 days ago

latchkey

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.

2 days ago

normie3000

Could or couldn't?

2 days ago

latchkey

couldn't... sorry for bad engrish.

2 days ago

steve-atx-7600

Yes. You would only name it ant if you wanted to taint the first impression of anyone that’s been coding for a couple decades or more.

2 days ago

brabel

Or if you have only started in the last few years and never heard of those older projects.

2 days ago

giglamesh

And could not be bothered to make the tiniest cursory check to see if the name was already in use by a well known project.

2 days ago

brabel

It's pretty difficult to tell whether something is, or was at some point, a well known project. Things that were major 20 years ago but are no longer used tend to become invisible since search engines prioritize recent knowledge.

For example, I think young developers would not know that SOAP was a major, like really major, technology in the 2000's. If you google for SOAP now, you get "cleaning products" mostly, and if you're lucky a single mention of the protocol - but unless you dig deeper, it's hard to find out it was actually THE industry standard for web services at some point.

IMO it's exactly the same with Ant (I used Apache Ant a lot in my early days as a dev!! But I've seen how very few Java devs know it these days, it's one of those things only the older guys know, plus a few younger one who have an interest in build systems in general and their history).

a day ago

benonsocial

I thought the same thing as I [half] read the title.

2 days ago

bdcravens

I assumed it was a framework from Alibaba, coming out of their Ant Group, where Ant Design also came from.

2 days ago

m3h

The author shared their experience building the first version in a month: https://themackabu.dev/blog/js-in-one-month

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...

2 days ago

hollowturtle

> The engine, Ant Silver, is hand-built.

2 days ago

vips7L

It’s not hand-built. It’s hand prompted.

2 days ago

hoppp

I don't like it.

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

2 days ago

hollowturtle

Not specified what the hack hand prompted means anyways?

2 days ago

bblb

Writing code by your own hands is an esoteric hobby. We are past the slop era. This is coding now. If you're 1x, you're not a dev.

I would assume by now most of the code published on Github is hand-built with LLM prompts and armies of AI agents.

2 days ago

opem

What is the definition of being an 1x dev?

2 days ago

vips7L

This is very much still the slop era.

2 days ago

kamov

Okay, so would you say LuaJIT is slop, just because it is hand coded?

2 days ago

SilverSlash

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.

2 days ago

carimura

i was just joking about Anthropic's `ant` CLI not caring about Apache `ant` (maybe one person got it), and now we're talking about Javascript `ant`!

2 days ago

ebiester

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.

2 days ago

sivanmz

I was working on our ant build last night

2 days ago

theMackabu

I dont know a single soul who uses the Anthropic `ant` cli....

2 days ago

ftchd

Isn't `claude` anthropic's CLI? :D

2 days ago

guessmyname

Anthropic develops at least two command line interfaces (CLI’s):

• (ant) https://github.com/anthropics/anthropic-cli

• (claude) https://github.com/anthropics/claude-code

2 days ago

colinhb

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?

2 days ago

CharlesW

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.

2 days ago

ksec

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.

2 days ago

colinhb

Thanks - so much easier to understand what Elk is (and why it is) than Ant.

a day ago

port11

Deno offers practically everything I see here, but is mature, serious, written before LLMs (not sure about now), and has a solid team behind it.

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.

2 days ago

[deleted]
2 days ago

tobr

What is the serif typeface used on the website? It’s been renamed (I assume) to ant_serif and scrubbed of any other identifiers. It’s very pleasant.

2 days ago

paipa

It's Bureau Serif from Smuss Type Kiosk: https://typekiosk.smuss.studio/bureau-serif

He forgot to scrub the vendor ID field.

2 days ago

asdf88990

This seems to be tbe authors modus operandi. Steal.

2 days ago

egnehots

You're stating: "delivers near-V8 speeds"

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?

2 days ago

theMackabu

many, the engine has basically gone through a full rewrite since feb, that was still mostly interpt and missing many jit ops.

nightly will include benchmarks soon as well

2 days ago

pikuseru

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.

2 days ago

ptx

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).

2 days ago

theMackabu

its pretty fast tbh, though third-party benches would be great to have!

2 days ago

ptx

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?

2 days ago

theMackabu

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

2 days ago

cognitiveinline

Does it work on windows?

2 days ago

theMackabu

no sandbox on windows... yet!

2 days ago

_shantaram

Deno has that! Come join us :P no affiliation, just a happy user.

2 days ago

Imustaskforhelp

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

2 days ago

theMackabu

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

2 days ago

Imustaskforhelp

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!

2 days ago

theMackabu

:D

2 days ago

cognitiveinline

How big are these binaries? the big electron complaint is the large binaries. if these are under 10mb, you have a winner.

2 days ago

douxx

Ant desktop is currently in development, from what I recall http://ants.land/ant-desktop

2 days ago

Imustaskforhelp

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.

2 days ago

douxx

Weird, maybe your DNS settings on your desktop or an extension blocking it?

2 days ago

theMackabu

thats very weird, its hosted on cloudflare workers atm. might be blocked by your isp? ive seen that happen to .land

2 days ago

Imustaskforhelp

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?

2 days ago

theMackabu

> 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

2 days ago

derdi

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?

2 days ago

gandreani

This is very interesting! The sandboxing and quick startup make this an interesting foundation for a FaaS system.

Lots of frontend devs (and vibe coders) just want a "deploy my code" service.

2 days ago

skybrian

Could you use the JSR package registry instead of setting up a new one?

2 days ago

gandreani

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.

2 days ago

randall

+1 to this.

2 days ago

digitaltrees

Cool project. I am working on a JavaScript dialect for my kids and non technical team members. I’ll target and as a run time.

2 days ago

theMackabu

LATEST RELEASE REQUIRES A STATIC RELEASE HOTFIX!!

https://github.com/theMackabu/ant/actions/runs/29167621329.

im very sorry everyone who tried to install and got a libcares error :(

2 days ago

rvz

ok?

2 days ago

hoistbypetard

Seems odd not to acknowledge and differentiate yourself from [apache ant](https://ant.apache.org).

Failure to do so certainly makes me think the new project isn't very serious.

2 days ago

stickfigure

Also Ant Design. The word is too heavily overloaded, even in the JS ecosystem.

2 days ago

syrusakbary

It's refreshing to see more self-made JS runtimes.

I'd love to see if I can integrate it onto Edge.js for full Node.js support ( https://edgejs.org )

2 days ago

theMackabu

would be cool to see!

2 days ago

djfobbz

I can't get Bun to work under WSL1, which is super annoying. Does Ant support WSL1?

2 days ago

seabrookmx

Likely not. A lot of debuggers don't work under WSL1 either due to missing syscalls.

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.

2 days ago

theMackabu

unknown, have not tried. but let me know if it does work

2 days ago

nesarkvechnep

[flagged]

2 days ago

7bit

Why are you Not using WSL2?

2 days ago

freedomben

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

2 days ago

glyptic

The design of the website looks very close to: https://cognition.com

2 days ago

md-ayaz-me

Wake up babe, new javascript framework has been launched!

a day ago

h1696UOuk

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.

2 days ago

EvilGoose

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.

2 days ago

Kwpolska

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.

2 days ago

theMackabu

this page is literally a inside joke, theres a reason /jobs doesn't work (im not hiring)

2 days ago

cognitiveinline

Ah you're the cluely guy!

2 days ago

theMackabu

not anymore!

2 days ago

fatata123

[dead]

2 days ago

quadrature

> Does not look trustworthy

what are you implying specifically ?

2 days ago

avaer

Even assuming the worst interpretation, I don't understand how his translates to the trustworthiness of an open source project.

2 days ago

bel8

I don't understand the correlation.

2 days ago

sylware

Cannot access the web site: whatwg cartel web engine only.

Is antjs coded in plain and simple C?

2 days ago

rererereferred

Seems like so: https://github.com/theMackabu/ant

Odd choice for a vibecoded project.

2 days ago

theMackabu

> Odd choice for a vibecoded project.

I'm using coding agents to accelerate implementation, not to replace understanding or review. The architecture, technical decisions, testing, and final responsibility are still mine, so I don't think "vibecoded" is an accurate description here.

12 hours ago

lelanthran

> 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.

2 days ago

sylware

Thx for the github.com link, I can have a look at it.

2 days ago

jeremyjh

I don’t really see how you appeal to JavaScript developers with “small binaries”. What is a 50mb runtime you down once next to a 200mb node_modules ?

2 days ago

franciscop

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.

2 days ago

weli

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...

2 days ago

theMackabu

this is coming soon!

2 days ago

gjmveloso

Great start, clean ergonomics and API surface.

Does `antx` executions are sandboxed by default using `ant:sandbox`?

2 days ago

steele

Coming soon: LLM harness of the day called make

2 days ago

esafak

I hope you get some collaborators, to increase the bus factor. You might want to write a roadmap to focus efforts.

2 days ago

theMackabu

good idea!

2 days ago

tujux

Would really like to hear the motivation behind why you're building this :)

2 days ago

dvh

What's the benefits over v8?

2 days ago

theMackabu

its ~8mb including the entire runtime and node-compat work. pretty simple to embed anywhere as well

2 days ago

ptx

And what are the tradesoffs?

How is it so much smaller than V8 while also apparently including a package manager, a web server, a TypeScript compiler and a hypervisor?

2 days ago

theMackabu

> 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

2 days ago

felooboolooomba

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.

2 days ago

randall

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?

2 days ago

theMackabu

yes! I will be making a roadmap like a comment here suggested, should help

2 days ago

stephenlf

Slick project. Very cool.

2 days ago

luciana1u

a JS runtime called Ant. we have gone from Node to Deno to Bun to Ant — the naming convention is now just a countdown to the smallest living organism

2 days ago

relug

if this is trying to competing with v8/llvm thats compiler stuff u gotta be benching and comparing assembly not "hono boot" lol

2 days ago

Reubend

Can this engine be embedded into other programs?

2 days ago

hexsprite

i might try porting this to rust ;)

2 days ago

Geee

Does it support WebGPU?

2 days ago

gaurang404

Damnn, gonna try this for sure

2 days ago

gfat

Appreciate the typography and simple design of the site and its registry.

2 days ago

bellowsgulch

> Something you could distribute without dragging along hundreds of megabytes of V8 or Node.

Holy crap, V8 is that big now? Very interested in this for embedding purposes.

2 days ago

progx

https://zoo.js.org/

V8 21M, Score 47285, ES6 98%

Ant 4.3M, >>> Score 69 <<<, ES6 50%

2 days ago

theMackabu

this is very out of date, from February. please just check the repo or even run the tests

2 days ago

[deleted]
2 days ago

sirjaz

This looks like a great replacement for electron

2 days ago

curtisblaine

I see benchmarks for cold start, why there are no benchmarks for runtime performance Vs Node, Deno and Bun? (and quickjs et al.)?

2 days ago

[deleted]
2 days ago

guillaume_code

[flagged]

13 hours ago

qiaobax

[dead]

2 days ago

qiaobax

[dead]

2 days ago

simonw

[dead]

2 days ago

versecafe

[dead]

2 days ago

jonahx

[dead]

2 days ago

[deleted]
11 hours ago

vladsiu

[dead]

2 days ago

123sereusername

[dead]

2 days ago

CrzyLngPwd

[flagged]

2 days ago

deanc

And who are you? Why should we trust you and your runtime?

2 days ago