Distributing Notebooks#

nbgitpuller links launch students into a notebook on JupyterHub by pulling the assignment from Github. If you are using a JupyterHub instance for your course, we recommend using nbgitpuller links to distribute notebooks to students. If you are running notebooks locally, you should instead distribute assignments through a learning management system (LMS). In this case, after you have uploaded the files to the LMS, students will need to download them and run it locally on their computers.

Workflow#

Here are the basic steps you will need to go through to distribute notebooks and other files.

  1. Create a folder with all files for the assignment (notebook, datasets, etc.)

  2. Upload the folder to a public GitHub repository

  3. Generate an nbgitpuller link for the folder using the nbgitpuller link generator (more on this below)

  4. Distribute the link to students through a course web page or LMS.

An important note#

The technology behind nbgitpuller links, called nbgitpuller, pulls all files from a repo into the user’s JupyterHub account. This means that you should not store unfinished materials and answer keys in the same repo as published assignments. Any nbgitpuller link for a published assignment would also distribute the unfinished materials and answer keys to the students, which you probably do not want. Instead, we recommend that you use a public repo for published assignments and a private repo for unfinished materials and answer keys.