Skip to main content

Build a small website to host Jupyter notebooks as course chapters

Project description

nbcourse: publish your course based on Jupyter notebooks


nbcourse helps you building a static website to publish your course content in the form of jupyter notebooks (one notebook for one chapter).

Main features:

  • all the configuration is described by a single nbcourse.yml file
  • it is based on doit in order to build efficently the html files
  • chapters can be displayed in preview mode only so attendees can see the whole course program without being able to access content of the lessons to come
  • notebooks can be:
    • rendered as static html files,
    • rendered as static reveal slideshows,
    • packaged with all their material in a downloadable archive,
    • compiled in a single pdf book using bookbook
  • the theme can be easily customized (html files are templated using jinja)

See this python course (in French) as an example.


pip install nbcourse


Initiate an empty nbcourse project

nbcourse --init

Configure your website

  • Put your notebooks file in the notebook/ directory
  • Edit the nbcourse.yml file created by the nbcourse --init command.

Build your website


Resulting files are in the build/ directory.

Get help

nbcourse --help


Publishing with GitLab Pages is as simple as adding a .gitlab-ci.yml file such as:

  image: boileaum/jupyter
    - pip install nbcourse
    - nbcourse -n 5
    - mv build public
      - public

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nbcourse-0.3.6.tar.gz (1.9 MB view hashes)

Uploaded source

Built Distribution

nbcourse-0.3.6-py2.py3-none-any.whl (1.9 MB view hashes)

Uploaded py2 py3

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page