package quickjs

  1. Overview
  2. Docs
Bindings for QuickJS (a Javascript Engine to be embedded https://bellard.org/quickjs)

Install

Dune Dependency

Authors

Maintainers

Sources

quickjs-0.1.2.tbz
sha256=27f6c8c9a3a7afa3ab7506d1154f22cf41249e2b789c0c6c634982809d17ad57
sha512=860ca84b9409a54b2fedc6b9777009872b9508bcee0f8ca3555822618640d763820e1be11c47603a4638885ab3df7eb705523cef330479147340404a7f2faa35

Description

Published: 22 Jul 2024

README

quickjs

quickjs.ml is a set of OCaml bindings for QuickJS, a small and embeddable JavaScript engine. It supports the ES2020 specification including modules, asynchronous generators, proxies and BigInt.

This project exposes two libraries:

  • quickjs.bindings the raw QuickJS C API

  • quickjs a polished API on top of quickjs.bindings with the same shape as the JavaScript API

Motivation

The purpose of this project is to provide the same behaviour as the JavaScript engines from browsers (SpiderMonkey, JavaScriptCore, ChakraCore, v8) into native OCaml. So code that runs in the browser (via Melange) can be run in native with the same results.

Documentation

API reference

Status

This is a work in progress, and currently only includes bindings to RegExp (binded to libregexp) check the to bind issues from the issue tracker.

Dependencies (4)

  1. ctypes
  2. integers
  3. ocaml >= "5.0.0"
  4. dune >= "3.8"

Dev Dependencies (5)

  1. ocamlformat = "0.26.1" & with-test
  2. ocaml-lsp-server with-test
  3. odoc with-doc
  4. fmt with-test
  5. alcotest with-test
OCaml

Innovation. Community. Security.