Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Serve kernel WASM assets #1376

Open
davidbrochart opened this issue Dec 13, 2023 · 0 comments
Open

Serve kernel WASM assets #1376

davidbrochart opened this issue Dec 13, 2023 · 0 comments

Comments

@davidbrochart
Copy link
Contributor

Problem

To some extend, a Jupyter server allows to transfer data to a client, that can then work with it, even offline. This is even more the case with real-time collaboration, where CRDTs allow clients to become local-first applications. But in some cases this is not enough, for instance when working on a notebook a kernel is needed in order to execute cells.
Currently, kernels only live in the backend, but with JupyterLite they can run in the frontend using WASM. We can see WASM as a way to serialize code so that it can be transferred over the wire. Once in the browser, a JupyterLab (or JupyterLite) client could fully work offline on a notebook.

Proposed Solution

I'm imagining that a kernel could advertise itself as "downloadable", if it has previously been compiled to WASM. A field, probably in the kernelspec, would point to a directory containing the WASM assets. A JupyterLab client could suggest to download the kernel code when opening the notebook, and use that in-browser kernel, or use the remote kernel, making clear that the in-browser kernel would allow offline work, with the limitations that come with this technology.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant