## ContainDS
[ContainDS](https://cdsdashboards.readthedocs.io/en/stable/) is a great way to launch different web applications all through the JupyterHub browser.
More docs are coming soon, but at a glance you can proxy all the [frameworks listed](https://cdsdashboards.readthedocs.io/en/stable/chapters/userguide/frameworks.html)
1. [Rshiny](https://cdsdashboards.readthedocs.io/en/stable/chapters/userguide/frameworks/rshiny.html)
2. [Dash](https://cdsdashboards.readthedocs.io/en/stable/chapters/userguide/frameworks/plotlydash.html)
3. [Flask](https://cdsdashboards.readthedocs.io/en/stable/chapters/userguide/frameworks/flask.html)
4. [Streamlit](https://cdsdashboards.readthedocs.io/en/stable/chapters/userguide/frameworks/streamlit.html)
Please note that for ContainDS all paths are *relative to the Jupyterhub root*. You can get the jupyterhub root by right clicking on any file or directory in the file tree browser and pressing `Copy Path`.
Usually this is a path relative to your `/home` directory.
![jhub-get-relative-path](./jhub-get-relative-path.png)
### RShiny
### Dash
### Flask
### Flask
### Streamlit