JupyterCon 2023

Xeus kernels in the browser
05-11, 14:30–15:00 (Europe/Paris), Louis Armand 2

Xeus, a native implementation of the Jupyter protocol, facilitates the authoring of new kernels, especially for languages for which the interpreter has a C or a C++ API. Kernel authors can focus on the language-specific parts of their work and don’t have to deal with the protocol. The number of flurishing kernels based on xeus these last years has proven it to be a reliable component of the Jupyter ecosystem.

In this talk, we will talk about the last evolutions of the xeus stack, and how the flexible architecture of xeus made it easy to develop kernels that run entirely in the browser.

We will first give an overview of the xeus ecosystem and the different kernels based on it. We will then dive into the detail of xeus and its architecture, and how users can author new kernels with the library.

In the next section, we will discuss the specifity of WASM kernels, and demonstrate how the change in xeus made it easy to generate kernels that run entirely in the browser.

We will conclude with a roadmap for future developments.


  • Overview of the xeus-based kernels
  • Details of the xeus architecture
  • Specificity of WASM kernels and how we adapted xeus
  • WASM kernel generation

Johan Mabille is a Technical Director specialized in high-performance computing in C++. He holds master's degree in computer science from Centrale-Supelec.

As an open source developer, Johan coauthored xtensor, xeus, and xsimd. He is also involved in the development of mamba. Johan is also active in frontend projects, he participated to the development of the debugger in JupyterLab and recently made the migration to CodeMirror 6.

Prior to joining QuantStack, Johan was a quant developer at HSBC.

This speaker also appears in: