Hey,

I am interested in integrating notebook functionality into my application.
I noticed that VS Code seems to have a custom frontend, and was wondering 
how this is done?

I found documentation about the REST API, which seems to be for managing 
content, kernels, sessions, etc.
https://jupyter-server.readthedocs.io/en/latest/developers/rest-api.html

And I found documentation of the kernel zmq protocol, which seems to be at 
a lower level.
https://jupyter-client.readthedocs.io/en/stable/messaging.html

I had a look with the web inspector at a running Jupyter Lab which seems to 
use a websocket for executing code and drawing figures and widgets.
With some copy-pasting I was able to execute a bit of code and get a reply.
But I can't find any documentation on this websocket protocol.
I'm particularly concerned about plots and widgets.

I looked around in https://github.com/microsoft/vscode-jupyter a bit and 
there is a lot going on. They seem to have custom implementations for all 
sorts of widgets.

For my usage, I think it makes more sense to embed the existing Jupyter 
Notebook interface rather than re-implement everything from scratch. Is 
this something that can be done at a more fine-grained level than throwing 
the entire app in an iframe?

The main challenge is getting interactions between my app and the notebook 
going. For example creating and evaluating cells/notebooks. And making 
widgets that do stuff in the rest of the app. Maybe I could write 
extensions that offer their own API to my app?

For context, I'm writing an app for drawing and simulating schematics.
Something like LTspice, KiCad, or even a bit like Simulink, for those 
familiar with that.
So it definitely makes no sense to embed the whole thing INSIDE a notebook.
Maaaaybe the entire editor could be a mimerender plugin, but that still 
doesn't answer the question how the editor can run simulations in a 
notebook (which plots the results) and then back-annotate results into the 
schematic.

Curious to hear your thoughts.

Regards,
Pepijn

-- 
You received this message because you are subscribed to the Google Groups 
"Project Jupyter" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jupyter+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jupyter/03ed66ab-2ffe-47cf-bf1d-66d224f513f8n%40googlegroups.com.

Reply via email to