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

https://github.com/ryuapp/mnode

A minimal JavaScript runtime for CLI tools.
https://github.com/ryuapp/mnode

Last synced: 8 months ago
JSON representation

A minimal JavaScript runtime for CLI tools.

Awesome Lists containing this project

README

          

# mnode

mnode is a minimal JavaScript runtime for CLI tools. It's built on QuickJS and Rust.

## Install

```sh
cargo install --git https://github.com/ryuapp/mnode mnode
```

### How to use

```sh
# Run JavaScript code
mnode hello.js
# Compile JavaScript into a self-contained executable
mnode --compile hello.js
```

## Supported Platforms

The tier system does not imply stability, but rather indicates the priority of addressing platform-specific bugs.

### Tier 1

- `x86_64-pc-windows-msvc`

### Tier 2

- `x86_64-unknown-linux-gnu`

### Tier 3

- `aarch64-unknown-linux-gnu`
- `aarch64-apple-darwin`
- `aarch64-pc-windows-msvc`

## Motivation

Starting with `deno compile`, we've made it easy to distribute JavaScript runtimes and scripts as single executable applications. While similar functionality is possible with Node.js, Bun, or Andromeda, the file sizes are too large for simple CLI tools.\
To solive this issue, We're developing a new JavaScript runtime using QuickJS, the most lightweight JavaScript engine.

Currently, we are only creating the API necessary for [pindeps](https://github.com/ryuapp/pindeps).