Library to create jupyter kernels in Erlang

erlang, jupyter


Build Status


Erlang implementation of the Jupyter Messaging Specification, enabling writing Jupyter kernels in Erlang or other BEAM based languages. Common functionality like history keeping, the execution counter and output are handled in this library such that one can concentrate on the individual behaviour.


To implement a kernel, the behaviour jup_kernel_backend has to be implemented. The only required functions are do_execute and do_kernel_info.

Running a kernel is then a matter of running jupyter:start_kernel with an arbitrary name, the filename of a Jupyter connection file, the backend module and additional arguments that are passed to the backend's init callback.

Currently, the API is in flux, so there is no concrete documentation on the individual functions, yet. It's currently developed in lockstep with ierl, so the kernel backends there (Erlang, LFE and Elixir) are the de-facto documentation until the behaviour is done.