jupyter / dashboards

[RETIRED] See Voilà as a supported replacement
https://github.com/voila-dashboards
Other
984 stars 211 forks source link

Simple shareability of dashboards #214

Open rsdenijs opened 8 years ago

rsdenijs commented 8 years ago

I have been longing for something like this for so long!

Is there any way to make the dashboards shareable by url so that a colleague can play around with the widgets without having to worry about executing the code in notebook mode and then switching to the dashboard?

parente commented 8 years ago

Hi @rsdenijs. There's a few different ways of "sharing" that we're working on:

Check out the https://github.com/jupyter-incubator/dashboards_bundlers repo for the other extension you can install to get the easiest "share via URL" mechanism going. Here's an example of a dashboard deployed that way (running in a notebook server on a tmpnb cluster):

http://jupyter.cloudet.xyz/files/2015-notebook-ux-survey/analysis/deployed_dashboard/index.html

Feel free to ping back with questions.

rsdenijs commented 8 years ago

Thanks, I think the scenario from the deployment roadmap and the demo in https://camo.githubusercontent.com/a6772aa57bf0596518c24f06b7125a9341b75062/68747470733a2f2f69626d2e626f782e636f6d2f7368617265642f7374617469632f66746a6979746e6d6a61626636617767396f7879776f7367706271396f3966642e676966 comes really close to what I need. I hope to be able to get it working!

jhpedemonte commented 8 years ago

That linked GIF shows using the dashboards bundler extension deploying to the dashboards server (the 3rd bullet @parente listed above).

parente commented 8 years ago

@rsdenijs Please let us know if you do get it working or not. Feedback is always welcome.

rsdenijs commented 8 years ago

Thanks. I havent found the time to try it out yet. When I try ill let you know about my experience.

marqh commented 8 years ago

Hi @parente

There's a few different ways of "sharing" that we're working on:

I'm similarly interested in building dashboards that we can share with interested colleagues. I have a couple of follow up questions, if I may

Deploying dashboards as static web apps within the Jupyter notebook server itself (works, but not very secure)

Do you think this plays nicely with the Jupyter Hub? This provides a front end authentication option, including federated auth, which could drastically increase the level of security, if i understand the issues correctly.

If I have a dashboard element, say a selector which picks an option which is passed to the next element to run, would you expect these selectors and follow on functionality to work the same whether on my individual notebook server, or a shared hub?

many thanks mark

parente commented 8 years ago

@marqh Sorry for the delay in responding.

Do you think this plays nicely with the Jupyter Hub?

This was discussed recently at a Jupyter dev meeting. Making it possible to share dashboards within the JHub security envelope is on the roadmap as supporting a dashboard view-only mode within the Notebook server itself. See https://github.com/jupyter/roadmap#dashboarding. However, JHub support is just a glimmer of an idea at the moment.

This provides a front end authentication option, including federated auth, which could drastically increase the level of security, if i understand the issues correctly.

It helps somewhat, but it still allows unfettered access to kernels from the browser by the dashboard user. The jupyter-incubator/dashboards_server project addresses both authentication and limits access to kernels. (See the info there.)

If I have a dashboard element, say a selector which picks an option which is passed to the next element to run, would you expect these selectors and follow on functionality to work the same whether on my individual notebook server, or a shared hub?

The JHub support discussed would simply make it possible for users with an account on a particular JHub deployment to access dashboards shared by one another by having them execute on each other's notebook servers. So I'd expect them to run as they do on an individual notebook server. But again, this is just an idea at the moment. We've been focused on the original dashboard incubator roadmap so far: https://github.com/jupyter-incubator/dashboards/wiki/Deployment-Roadmap. Transitioning out of incubator and more fully integrating with JHub is just starting to be discussed.