Hi Bryan!
Top level static routes (i.e. that serve BokehJS) are configured here:
https://github.com/bokeh/bokeh/blob/master/bokeh/server/urls.py
Per-app static routes are configured here, based on app.static_path (if
present):https://github.com/bokeh/bokeh/blob/master/bokeh/server/tornado.py#L253-L260
Bokeh is a Tornado application, and those are all Tornado views. If you
run the Bokeh server programmatically you can certainly add any
additional Tornado view you need, including additional StaticHandler
instances.
Cool! This should get us going!
FWIW I am interested in Image glyphs that could send PNGs/JPGs to the
client as-is, without needing to first convert them to RGBA arrays. I
don't know when we might have the resources to do that, but I am happy
to offer guidance to anyone that would like to work on it sooner.
I might be interested for sure.
It seems wasteful to decompress before sending, even locally, right?
Back when our app was pure javascript reading in images from a database, the images were base64-encoded jpegs. It seemed to work pretty well. Would b64-encoding the raw bytes from disk be the right approach here? Where do things get transmitted from Python to js (and back) in Bokeh? I haven't got that clear in my head despite various dives into the source code.

=P
Juan.
···
On Fri, Oct 12, 2018, at 2:52 AM, Bryan Van de ven wrote: