I am experimenting with a moderately complex notebook (~10 widgets, among them an ipyleaflet map) and I have seen that, from first GET request to the end of the load, it takes about 1 minute, and sometimes it gives timeouts when loading the JavaScript modules. I wonder if there would be some way to "preload" a pool of kernels to help accelerate page show times. Not sure if this is similar to https://github.com/QuantStack/voila/issues/5.
A visual indication that things are loading would be a first step.
True. At the moment I'm planning to simulate that by embedding the voila HTML in an iframe, and putting some loading indication outside.
I see a few options here:
On the last point, I also want to bring up a use cases that we (me @SylvainCorlay and @pbugnion) discussed yesterday. If you want to render voila in a Jupyter Lab panel (is that the right word?) you only want to render the 'body' part of the HTML.
Also, another use case I have in mind is to have a template served directly, no cell output will be rendered, but the template itself takes care of rendering the widgets at specific locations.
Some food for thought.
The jupyter/kernel_gateway has a preheated kernel pool for its notebook-as-an-API mode (https://jupyter-kernel-gateway.readthedocs.io/en/latest/http-mode.html). Maybe something can be ported to jupyter_server from there?
Thanks, that is good to know!
Most helpful comment
A visual indication that things are loading would be a first step.