How the Little Jupyter Notebook Became a Web App: A Tutorial for Making Your Code and Data More Accessible and Reusable
Prior exposure to ipywidgets and/or familiarity with object-oriented programming is recommended. We review the basics of ipywidgets within the first hour and quickly move on to more advanced design principles.
There are two ways to access this tutorial. We recommend installing the environment locally with Anaconda or Miniconda, but if you experience trouble and need a quick backup, feel free to launch this tutorial with Binder.
If you would like to run this tutorial locally on your own computer, please follow these instructions:
- Clone this repository with
git clone https://github.com/nicole-brewer/scipy23-jupyter-web-app-tutorial
- If you don’t have it already, you will need to download and install Miniconda
- Run
conda env create -f environment.yml
to create a conda environment calledjupyter-web-application
- Run
conda activate jupyter-web-application
to activate the conda environment - Run
jupyter lab
to launch JupyterLab
We will follow the notebooks in the tutorial sequentially, starting with
00_getting_started.ipynb
. We will then transition to editing notebooks
in the nbs
directory that contains a full web application. You will be
instructed when to do so from the numbered notebooks.
You can launch these notebooks in a Binder environment by clicking the badge below. This requires not extra installation on your part. Just click the link and follow along.
Binder will automatically shut down user sessions that have more than 10 minutes of inactivity (if you leave a jupyterlab window open in the foreground, this will generally be counted as “activity”). Binder tries to guarentee that active sessions will last up to 6 hours.
We will start from a fresh checkpoint after every break, so if your Binder session ends, you can just restart a new session and the beginning of the next section.