MIRROR: javascript for 🐜's, a tiny runtime with big ambitions ant.themackabu.dev

README.md

🐜 Ant #

An ant carries 50× its weight. So does this one.

Ant is a lightweight, high-performance JavaScript runtime built from scratch.
Built to carry more than it weighs without compromising performance.

$ ls -lh ant
-rwxr-xr-x⠀8.6M⠀ant*

# built with -Os
-rwxr-xr-x⠀4.5M⠀ant*

Table of contents #

Why Ant? #

Ant Node Bun Deno
Binary size 9 MB ~140 MB ~61 MB ~77 MB
Cold start ~4 ms ~30 ms ~10 ms ~18 ms
Engine Ant Silver V8 JSC V8
JIT ✓ ✓ ✓ ✓
WinterTC conformant ✓ partial ✓ ✓

Ant is designed for environments where size and startup time matter: serverless functions, edge computing, embedded systems, CLI tools, and anywhere you'd want JavaScript but can't afford a 50MB+ runtime.

Ant Silver is an independent engine, not a wrapper around V8, JSC, or SpiderMonkey. The JIT compiler uses a fork of MIR, a lightweight backend that enables near-native performance.

Installation #

curl -fsSL https://antjs.org/install | bash

Spec conformance #

Ant targets the WinterTC Minimum Common API specification, the standard for server-side JavaScript interoperability developed by Ecma TC55.

Suite Pass rate Notes
compat-table 100% 1511/1511 (ES1–ES5, ES6, ES2016+, ESNext)
Temporal 100% 4603/4603 at revision 2026-08-10
test262 ~75% 40243/53578 run on 2026-10-21

Benchmarks #

Cold start #

Measures the time to import Hono, register routes, and exit. Each runtime loads the same bench-coldstart.js script from examples/npm/hono/ that creates a Hono app with two routes, prints "ready", and calls process.exit(0). No HTTP server is actually started, this isolates module resolution and initialization overhead.

Measured with hyperfine (10 warmup runs, 100 timed runs):

hyperfine --warmup 10 --runs 100 \
  'ant  examples/npm/hono/bench-coldstart.js' \
  'node examples/npm/hono/bench-coldstart.js' \
  'bun  examples/npm/hono/bench-coldstart.js' \
  'deno run --allow-read --allow-env examples/npm/hono/bench-coldstart.js'
Runtime Mean Min Max Relative
Ant 3.9 ms 2.1 ms 5.3 ms 1.00
Bun 8.8 ms 6.7 ms 10.7 ms 2.26× slower
Deno 18.6 ms 16.2 ms 20.8ms 4.74× slower
Node 29.4 ms 27.3 ms 32.6 ms 7.50× slower
Environment
Detail Value
Hardware Apple M5 Pro, 64 GB RAM, 18 cores
OS macOS 27.0 Golden Gate (26A5406e)
Ant 14.1.aa53d9d1.0
Node 26.5.1
Bun 1.4.0
Deno 2.9.5

Building Ant #

See BUILDING.md for instructions on how to build Ant from source and a list of supported platforms.

Docker Images #

Pull the published image for linux/amd64 or linux/arm64.

docker pull themackabu/ant:latest
docker run --rm themackabu/ant:latest --version
docker run --rm -v "$PWD:/app" themackabu/ant:latest index.js

You can also build the container from source:

docker build -t ant .
docker run --rm ant --version
docker run --rm -v "$PWD:/app" ant index.js

Security #

For information on reporting security vulnerabilities in Ant, see SECURITY.md.

Community #

Contributing to Ant #

We welcome contributions through pull request. See CONTRIBUTING.md for more details.
For information about the governance of Ant, see GOVERNANCE.md.