/nbclient

A client library for executing notebooks. Formally nbconvert's ExecutePreprocessor

Primary LanguagePythonOtherNOASSERTION

Binder Build Status Documentation Status image Python 3.6 Python 3.7 Python 3.8 Python 3.9 Code style: black

nbclient

NBClient, a client library for programmatic notebook execution, is a tool for running Jupyter Notebooks in different execution contexts. NBClient was spun out of nbconvert's former ExecutePreprocessor.

NBClient lets you execute notebooks.

Interactive Demo

To demo NBClient interactively, click this Binder badge to start the demo:

Binder

Installation

In a terminal, run:

python3 -m pip install nbclient

Documentation

See ReadTheDocs for more in-depth details about the project and the API Reference.

Python Version Support

This library currently supports Python 3.6+ versions. As minor Python versions are officially sunset by the Python org, nbclient will similarly drop support in the future.

Origins

This library used to be part of the nbconvert project. NBClient extracted nbconvert's ExecutePreprocessorinto its own library for easier updating and importing by downstream libraries and applications.

Relationship to JupyterClient

NBClient and JupyterClient are distinct projects.

jupyter_client is a client library for the jupyter protocol. Specifically, jupyter_client provides the Python API for starting, managing and communicating with Jupyter kernels.

While, nbclient allows notebooks to be run in different execution contexts.