Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?


Failed to load latest commit information.

Installation | Documentation | Contributing | Development Install | Testing | License | Getting help

nbdime Jupyter Notebook Diff and Merge tools

Build Status Documentation Status Google Group

nbdime provides tools for diffing and merging of Jupyter Notebooks.

  • nbdiff compare notebooks in a terminal-friendly way
  • nbmerge three-way merge of notebooks with automatic conflict resolution
  • nbdiff-web shows you a rich rendered diff of notebooks
  • nbmerge-web gives you a web-based three-way merge tool for notebooks
  • nbshow present a single notebook in a terminal-friendly way

Diffing notebooks in the terminal:


Merging notebooks in a browser:



Install nbdime with pip:

pip install nbdime

See the installation docs for more installation details and development installation instructions.


See the latest documentation at

See also description and discussion in the Jupyter Enhancement Proposal.


If you would like to contribute to the project, please read our contributor documentation and the

Development Install

To install a development version of nbdime, you will need npm installed and available on your PATH while installing.

For a development install, enter on the command line:

pip install -e git+

See installation documentation for additional detail, particularly related to performing a dev install for working on the browser script code.


Install the test requirements:

pip install nbdime[test]

To run Python tests locally, enter on the command line: pytest

To run Javascript tests locally, enter: npm test

Install the codecov browser extension to view test coverage in the source browser on github.

See testing documentation for additional detail.


We use a shared copyright model that enables all contributors to maintain the copyright on their contributions.

All code is licensed under the terms of the revised BSD license.

Getting help

We encourage you to ask questions on the mailing list.