An open API service indexing awesome lists of open source software.

https://github.com/theMackabu/ant

javascript for 🐜's, a tiny runtime with big ambitions
https://github.com/theMackabu/ant

ant antjs engine javascript nodejs npm portable runtime typescript

Last synced: 10 days ago
JSON representation

javascript for 🐜's, a tiny runtime with big ambitions

Awesome Lists containing this project

README

          

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

```bash
$ ls -lh ant
-rwxr-xr-xβ €8.9Mβ €ant*

# built with -Os
-rwxr-xr-xβ €4.4Mβ €ant*
```

## Table of contents

- [Why Ant?](#why-ant)
- [Installation](#installation)
- [Benchmarks](#benchmarks)
- [Spec conformance](#spec-conformance)
- [Building Ant](#building-ant)
- [Security](#security)
- [Community](#community)
- [Contributing to Ant](#contributing-to-ant)

## Why Ant?

| | Ant | Node | Bun | Deno |
| ------------------- | ---------- | ------- | ------ | ------ |
| Binary size | **~9 MB** | ~120 MB | ~60 MB | ~90 MB |
| Cold start | **~5 ms** | ~31 ms | ~13 ms | ~25 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.

The engine, Ant Silver is hand-built, not a wrapper around V8, JSC, or SpiderMonkey. The JIT compiler uses a fork of [MIR](https://github.com/themackabu/mir), a lightweight backend that enables near compiled performance.

## Installation

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

## Spec conformance

Ant targets the [WinterTC Minimum Common API](https://min-common-api.proposal.wintertc.org/) 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) |
| test262 | ~64% | Improving; focus is on real-world coverage |

## Benchmarks

### Cold start

Measures the time to import [Hono](https://hono.dev), 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):

```bash
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** | **5.5 ms** | 4.9 ms | 6.1 ms | **1.00** |
| Bun | 10.6 ms | 9.5 ms | 13.8 ms | 1.93Γ— slower |
| Deno | 24.8 ms | 22.2 ms | 29.4 ms | 4.51Γ— slower |
| Node | 28.7 ms | 27.1 ms | 31.2 ms | 5.22Γ— slower |

Environment

| Detail | Value |
| -------- | --------------------------------- |
| Hardware | Apple M5 Pro, 64 GB RAM, 18 cores |
| OS | macOS 26.5.1 (arm64) |
| Ant | 12.1.15dd25d.1 |
| Node | 26.2.0 |
| Bun | 1.3.14 |
| Deno | 2.8.3 |

## Building Ant

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

## Security

For information on reporting security vulnerabilities in Ant, see [SECURITY.md](SECURITY.md).

## Community

- [Discord](http://discord.gg/CH7YSjWGzY)
- [Blog: Working was the beginning](https://themackabu.dev/blog/ant-part-two)
- [DeepWiki: Ant internals](https://deepwiki.com/theMackabu/ant)

## Contributing to Ant

We welcome contributions through pull request. See [CONTRIBUTING.md](CONTRIBUTING.md) for more details.

For information about the governance of Ant, see [GOVERNANCE.md](GOVERNANCE.md).