# ocsigen/js_of_ocaml

Compiler from OCaml to Javascript.

Repository: https://github.com/ocsigen/js_of_ocaml
Canonical: https://ross.abutalabs.com/products/js_of_ocaml
Homepage: http://ocsigen.org/js_of_ocaml/
Language: OCaml
License: NOASSERTION
License Family: other
Topics: javascript, ocaml, compiler, ocsigen, jsoo
Last push: 2026-08-29T09:22:17+00:00

## Health v2 (maintenance only)
Score: 97/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 100, release rhythm 91, longevity 100
- inputs: {"age_days": 4783, "days_push": 4, "days_rel": 63, "gap_med": 9, "n_releases_24m": 12}
- flags: no_license
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1130, forks 202 (observed 2026-09-01T02:14:05.436427+00:00)

## What it is
Js_of_ocaml is a compiler that translates OCaml bytecode to JavaScript, allowing pure OCaml programs to run in browsers and Node.js. It works with existing OCaml installations without recompiling libraries and includes bindings for most browser APIs.

## Use cases
- run ocaml programs in the browser
- compile ocaml to javascript
- build web apps in ocaml
- run ocaml code on node.js
- use ocaml libraries in a javascript environment
- compile ocaml to webassembly

## When to choose
- you have existing OCaml code or libraries you want to run in the browser without recompilation
- you want to write frontend web applications in OCaml with bindings for browser APIs
- you need faster execution than the OCaml bytecode interpreter in a JS environment
- you want to target modern JavaScript engines or WebAssembly from OCaml

## When to avoid
- you need to target very old JavaScript engines without transpilation
- your project is not written in OCaml and you want a general-purpose JS toolchain
- you need deep integration with the JavaScript ecosystem's npm tooling rather than compiling from OCaml

## Facets
- artifact type: cli-tool
- maturity: active
- function: compiler, programming-language, wasm
- domain: compilers, programming-languages, web-development, frontend
- platform: browser, cross-platform
- tags: ocaml, javascript, ocaml-to-javascript, bytecode-compiler, ocsigen, wasm, transpiler, compiler, nodejs, web-server

## Member repositories
- ocsigen/js_of_ocaml (main) score 97

## Provenance
- Observed fields: from GitHub, fetched 2026-09-01T02:14:05.436427+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T08:33:34.397692+00:00, confidence not recorded.
  - readme: https://github.com/ocsigen/js_of_ocaml (fetched 2026-09-01T02:14:05.436427+00:00, sha f8264255304d)
  - homepage: http://ocsigen.org/js_of_ocaml/ (fetched 2026-08-29T12:42:40.984333+00:00, sha c9d659cb806f)
- Data as of 2026-08-30T08:39:29.467469+00:00.
