Warning: Reason support is experimental. We are looking for beta-tester and contributors.

Installation

Requirements

OCaml: 4.13 to 5.4

Build tools:

  • dune >= 3.19
  • menhir

Libraries:

  • cmdliner >= 2.0
  • ppxlib >= 0.35
  • sedlex >= 3.3
  • yojson >= 2.1

Supported environments

The generated JavaScript works with:

  • Node.js 16 or later
  • Any modern browser supporting ECMAScript 6 (ES2015)

Note: Stdlib.Weak and Stdlib.Ephemeron require WeakRef support (ECMAScript 2021), available in all modern browsers and Node.js 14.6+.

Install from opam

Basic installation

For most users, install the compiler and ppx:

opam install js_of_ocaml js_of_ocaml-compiler js_of_ocaml-ppx

With Lwt support

For asynchronous programming with Lwt:

opam install js_of_ocaml js_of_ocaml-compiler js_of_ocaml-ppx js_of_ocaml-lwt

All packages

To install all available packages:

opam install js_of_ocaml js_of_ocaml-compiler js_of_ocaml-ppx \
  js_of_ocaml-lwt js_of_ocaml-tyxml js_of_ocaml-toplevel \
  js_of_ocaml-ppx_deriving_json

WebAssembly compiler

To compile to WebAssembly instead of JavaScript:

opam install wasm_of_ocaml-compiler

Additional requirement: Binaryen 119 or later must be installed on your system. See Binaryen installation.

See wasm_of_ocaml for usage.

See also