Jupyter (documentation) is an ecosystem that grew out of IPython.
It uses notebooks (JSON .ipynb
files) containing cells with code,
text, etc. These are usually interpreted by the web application, run
locally or remotely, for which kernels provide interpreters for the
various languages used interactively in the notebook.
For notes on kernel creation see Creating Language Kernels for IPython, who created the IHaskell kernel.
Jupyter Hub spawns, manages, and proxies multiple instances of the single-user Jupyter Notebook server.
Graham Dumpleton provides a series of blog posts on how to provide and administer development environments (e.g., for tutorials and workshops), including terminal sessions, run in OpenShift. (This is the workshopper tool.)
- Using JupyterHub as a generic application spawner
- Running an interactive terminal in the browser
- Creating your own custom terminal image
- Deploying a multi user workshop environment
- Administration features of JupyterHub
- Dashboard combining workshop notes and terminal
- Integrating the workshop notes with the image
- Deploying the full workshop
- ???