gen_js_api is based on the following ideas:
All syntactic processing is done by authors of bindings: the client code is normal OCaml code and does not depend on custom syntax nor on JS-specific types.
gen_js_api can be used in two complementary ways:
Generating .ml implementations from annotated .mli interfaces, in order to create the code for stub libraries.
As a ppx preprocessor on implementations to define local bindings.
Some ad hoc test to exercise various features.
An example of a self-contained program, a simple calculator, implementing local .bindings
- Install and use
- Using gen_js_api to generate .ml from .mli
- Using gen_js_api as a ppx processor
- Default naming convention
- JS-able types and type declarations
- Value bindings
- Class-wrapping bindings
- TODO list
js_of_ocaml: The compiler and runtime system on which gen_js_api relies. (Note: gen_js_api doesn't depend on js_of_ocaml's OCaml library, nor on its language extension.)
This gen_js_api package is licensed by LexiFi under the terms of the MIT license.
See see Changelog
- Alain Frisch
- Sebastien Briais