Versioning Jupyter notebooks

It's hard. Explore other notebooks in the meantime.

Data science is a programming discipline, and it often adopts software engineering tools. Teams usually version notebooks using git – but it's rarely a good experience.

The .ipynb format is a verbose JSON with plenty of metadata, variable outputs and binary blobs. That prevents git diff from doing a good job.

Some alternatives are converting it to markdown (a popular tool is jupytext), or integrating a review tool, such as ReviewNB.

A new generation of tools aims to solve these problems. They version notebooks natively, allowing to travel back and forth in time and program exploratively.


Logo of Deepnote

Deepnote is a new kind of data science notebook. Jupyter-compatible with real-time collaboration and running in the cloud. Oh, and it's free.

Read more


Logo of CoCalc

Your best choice for teaching remote scientific courses!

Read more

Kaggle Notebooks

Logo of Kaggle Notebooks

Explore and run machine learning code with Kaggle Notebooks, a cloud computational environment that enables reproducible and collaborative analysis.

Read more


Logo of Zepl

Notebook-powered analytics for enterprise teams.

Read more

Databricks Notebooks

Logo of Databricks Notebooks

A notebook is a web-based interface to a document that contains runnable code, visualizations, and narrative text.

Read more


Logo of Hex

The Data Workspace for Teams. Work with data in collaborative SQL and Python notebooks. Share as interactive data apps that anyone can use.

Read more


Logo of Nextjournal

Runs anything you can put into a Docker container. Improve your workflow with polyglot notebooks, automatic versioning and real-time collaboration. Save time and money with on-demand provisioning, including GPU support.

Read more