# Ocaml notebooks in web browser

**URL:** <https://discuss.ocaml.org/t/ocaml-notebooks-in-web-browser/17385>\
**Category:** Community\
**Tags:** js\_of\_ocaml, jupyter, announce\
**Created:** [October 14, 2025, 6:38pm UTC](https://discuss.ocaml.org/t/ocaml-notebooks-in-web-browser/17385 "2025-10-14T18:38:26Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![Davy](https://sea2.discourse-cdn.com/flex020/user_avatar/discuss.ocaml.org/davy/32/6218_2.png) [@Davy](https://discuss.ocaml.org/u/Davy)\
**Post date:** [October 14, 2025, 6:38pm UTC](https://discuss.ocaml.org/t/ocaml-notebooks-in-web-browser/17385/1 "2025-10-14T18:38:26Z")

</div>

Hello everyone !

I’m currently learning Ocaml, and found no better way to learn than working on a project :

I’m happy to announce [xeus-ocaml](https://github.com/davy39/xeus-ocaml), a new kernel to run Ocaml from **Jupyterlite** notebooks 🥳

I’m far from a professional developer, and very new to Ocaml, so do not hesitate to [try it](https://davy39.github.io/xeus-ocaml/lab/index.html?path=demo.ipynb) with your workflow, report any [new issues](https://github.com/davy39/xeus-ocaml/issues/new), ask for other external libraries (currently only stdlib and ocamlgraph), or [contribute](https://github.com/davy39/xeus-ocaml/blob/main/CONTRIBUTING.md) to its development to make the code more robust and idiomatic.

Any feedback would be appreciated!

---

<div class="post-metadata">

**Author:** ![Frederic\_Loyer](https://sea2.discourse-cdn.com/flex020/user_avatar/discuss.ocaml.org/frederic_loyer/32/3472_2.png) [@Frederic\_Loyer](https://discuss.ocaml.org/u/Frederic_Loyer)\
**Post date:** [October 14, 2025, 10:02pm UTC](https://discuss.ocaml.org/t/ocaml-notebooks-in-web-browser/17385/2 "2025-10-14T22:02:09Z")

</div>

Woow ! An excellent contribution, and I guess you are “beginning” the hard way !

---

<div class="post-metadata">

**Author:** ![Davy](https://sea2.discourse-cdn.com/flex020/user_avatar/discuss.ocaml.org/davy/32/6218_2.png) [@Davy](https://discuss.ocaml.org/u/Davy)\
**Post date:** [October 15, 2025, 10:08am UTC](https://discuss.ocaml.org/t/ocaml-notebooks-in-web-browser/17385/3 "2025-10-15T10:08:42Z")

</div>

Thanks, that was indeed technical! The trickiest bit was getting js\_of\_ocaml and Merlin to play nicely together (sharing the CMI/CMT/CMTI files) and communication with Xeus Emscripten, especially for file system support. Anyway, that sorted, I have to get back to the hard stuff: algorithms theory and correctness proofs…
