https://github.com/ideonate/cdsdashboards

JupyterHub extension for ContainDS Dashboards

https://github.com/ideonate/cdsdashboards

Science Score: 23.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
    1 of 12 committers (8.3%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (12.5%) to scientific vocabulary

Keywords

bokeh data-science jupyter jupyterhub panel plotly-dash rshiny streamlit visualization

Keywords from Contributors

plotly dataviz interactive
Last synced: 6 months ago · JSON representation

Repository

JupyterHub extension for ContainDS Dashboards

Basic Info
Statistics
  • Stars: 201
  • Watchers: 6
  • Forks: 37
  • Open Issues: 36
  • Releases: 0
Topics
bokeh data-science jupyter jupyterhub panel plotly-dash rshiny streamlit visualization
Created almost 6 years ago · Last pushed over 1 year ago
Metadata Files
Readme Contributing License

README.md

ContainDS Dashboards for JupyterHub

[!WARNING] This code may still be useful to you, but please note it does not generally work with the latest versions of JupyterHub. Please try jhub-apps for a more active codebase (which might still need configuration and custom code for your setup).

A Dashboard publishing solution for Data Science teams to share results with decision makers.

Run a private on-premise or cloud-based JupyterHub with extensions to instantly publish apps and notebooks as user-friendly interactive dashboards to share with non-technical colleagues.

Currently supported frameworks: - Jupyter notebooks (Voilà) - Streamlit apps - Plotly Dash apps - Bokeh / Panel apps and notebooks - R Shiny apps - Any custom server or framework

This open source package allows data scientists to instantly and reliably publish interactive notebooks or other scripts as secure interactive web apps.

Source files can be pulled from a Git repo or from the user's Jupyter tree.

Any authorised JupyterHub user can view the dashboard, or choose to give permission only to named users.

See full documentation

How it works

  • Data scientist creates a Jupyter Notebook as normal or uploads Python/R files etc
  • Data scientist creates a new Dashboard to clone their Jupyter server
  • Other logged-in JupyterHub users see the dashboard in their list
  • Click to launch as a server, using OAuth to gain access
  • User sees a safe user-friendly version of the original notebook - served by Voilà, Streamlit, Dash, Bokeh, Panel, R Shiny etc.

All of this works through a new Dashboards menu item added to JupyterHub's header.

Data scientist creates a Jupyter Notebook as normal

Original Jupyter Notebook

Data scientist creates a new Dashboard to clone their Jupyter server

Create New Dashboard

Other logged-in JupyterHub users see the dashboard in their list

Other User sees dashboard

Uses OAuth to gain access

Other user OAuths

Other user sees a safe user-friendly Voilà version of the original notebook

Voilà Dashboard

Or other app frameworks

App Collage

Requirements

Basic requirements:

  • JupyterHub 1.x
  • Python 3.6+

Note that JupyterHub 2.x is not supported. You will need to install a version 1.x (e.g. 1.5).

You should be able to use any authenticator for users to login - for example, corporate Google email sign in, or LDAP.

Any JupyterHub distribution should be suitable, depending on configuration. See requirements.

Installation

Full Setup and Installation details are in the documentation.

Contact and Support

Please see LICENSE for details.

Please do get in touch if you try out the package, or would like to but need some support. I would be very interested to find out how it can be used, and to work (without charge) to help you get it running. The project needs feedback in order to develop further!

Contact support@containds.com with any comments or questions at all.

There is a Gitter room for general chat with other community members, e.g. for confguration and use case tips.

Join the chat at https://gitter.im/ideonate/ContainDS Documentation Status Latest release Latest release

Owner

  • Name: Ideonate
  • Login: ideonate
  • Kind: organization
  • Email: contact@ideonate.com

GitHub Events

Total
  • Watch event: 5
  • Fork event: 1
Last Year
  • Watch event: 5
  • Fork event: 1

Committers

Last synced: 9 months ago

All Time
  • Total Commits: 440
  • Total Committers: 12
  • Avg Commits per committer: 36.667
  • Development Distribution Score (DDS): 0.055
Past Year
  • Commits: 3
  • Committers: 1
  • Avg Commits per committer: 3.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Dan Lester d****n@d****m 416
Frédéric Collonval f****l@g****m 9
Frédéric Collonval f****l@a****m 5
Olivier BEARN o****n@a****r 2
viniciusdc v****9@h****m 1
The Gitter Badger b****r@g****m 1
Pierre-Olivier Simonard p****d@g****m 1
Niral t****n@g****m 1
Danil Platonov d****v@a****a 1
Chris Ostrouchov c****v@g****m 1
Steven Laan S****n@d****l 1
Marc Skov Madsen m****a@o****k 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 155
  • Total pull requests: 33
  • Average time to close issues: 20 days
  • Average time to close pull requests: 6 days
  • Total issue authors: 41
  • Total pull request authors: 13
  • Average comments per issue: 3.24
  • Average comments per pull request: 1.3
  • Merged pull requests: 26
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • danlester (11)
  • fcollonval (10)
  • MarcSkovMadsen (9)
  • ricky-lim (7)
  • tomnewg (5)
  • faye1225 (4)
  • raybellwaves (3)
  • mohammedi-haroune (2)
  • statiksof (2)
  • mdonato-fn (1)
  • rcaskey-dtn (1)
  • nmearl (1)
  • stefanmeisner (1)
  • kla240 (1)
  • milutz (1)
Pull Request Authors
  • fcollonval (5)
  • MarcSkovMadsen (2)
  • gitter-badger (1)
  • obearn-archidev (1)
  • xeliba (1)
  • danlester (1)
  • StevenLaan (1)
  • adriendelsalle (1)
  • raybellwaves (1)
  • viniciusdc (1)
  • costrouc (1)
  • slemonide (1)
  • pierrotsmnrd (1)
Top Labels
Issue Labels
enhancement (44) bug (35)
Pull Request Labels

Packages

  • Total packages: 3
  • Total downloads:
    • pypi 184 last-month
  • Total docker downloads: 41
  • Total dependent packages: 1
    (may contain duplicates)
  • Total dependent repositories: 8
    (may contain duplicates)
  • Total versions: 86
  • Total maintainers: 1
pypi.org: cdsdashboards

ContainDS Dashboards extension for JupyterHub

  • Versions: 42
  • Dependent Packages: 0
  • Dependent Repositories: 1
  • Downloads: 184 Last month
  • Docker Downloads: 41
Rankings
Docker downloads count: 3.4%
Stargazers count: 5.0%
Forks count: 6.4%
Average: 9.9%
Dependent packages count: 10.1%
Downloads: 12.6%
Dependent repos count: 21.6%
Maintainers (1)
Last synced: 6 months ago
conda-forge.org: cdsdashboards
  • Versions: 22
  • Dependent Packages: 1
  • Dependent Repositories: 1
Rankings
Dependent repos count: 24.4%
Stargazers count: 27.1%
Average: 27.2%
Forks count: 28.5%
Dependent packages count: 29.0%
Last synced: 6 months ago
conda-forge.org: cdsdashboards-singleuser
  • Versions: 22
  • Dependent Packages: 0
  • Dependent Repositories: 6
Rankings
Dependent repos count: 13.9%
Stargazers count: 27.0%
Forks count: 28.4%
Average: 30.3%
Dependent packages count: 51.6%
Last synced: 6 months ago

Dependencies

.github/workflows/e2etests.yml actions
  • actions/checkout v2 composite
  • actions/upload-artifact v2 composite
.github/workflows/helm-z2jh-vercheck.yml actions
  • actions/checkout v2 composite
.github/workflows/z2jh-local.yml actions
  • actions/checkout v2 composite
  • actions/setup-python v2 composite
  • docker/build-push-action v2 composite
  • docker/login-action v1 composite
  • docker/setup-buildx-action v1 composite
  • pCYSl5EDgo/cat master composite
.github/workflows/z2jh-pypi.yml actions
  • actions/checkout v2 composite
  • actions/setup-python v2 composite
  • docker/build-push-action v2 composite
  • docker/login-action v1 composite
  • docker/setup-buildx-action v1 composite
  • pCYSl5EDgo/cat master composite
Dockerfile docker
  • $BASE_IMAGE latest build
docker-images/singleuser-example/containds-all-example/Dockerfile docker
  • $BASE_REPO $TAG build
docker-images/singleuser-example/containds-conda-example/Dockerfile docker
  • $BASE_REPO $TAG build
docker-images/singleuser-example/containds-conda-fastapi-example/Dockerfile docker
  • $BASE_REPO $TAG build
docker-images/z2jh/hub/Dockerfile docker
  • $BASE_IMAGE latest build
e2e/docker-compose.yml docker
  • cypress/included 4.4.0
examples/docker-deploy/docker-compose-nginx.yml docker
  • jupyterhub latest
  • nginx latest
  • postgres 9.5
examples/docker-deploy/docker-compose.yml docker
  • jupyterhub latest
  • postgres 9.5
examples/docker-deploy/hub/Dockerfile docker
  • $BASE_IMAGE latest build
docs/requirements.txt pypi
  • sphinx >=2.0
setup.py pypi
  • alembic *
  • jupyterhub >=1.0.0
  • pluggy *
  • tornado >=6.0.4
  • traitlets *
docker-images/singleuser-example/containds-conda-fastapi-example/environment.yaml conda
  • pip 21.0.*
  • python 3.9.1.*