Available now.ipynb × 2

Compare IPYNB side-by-side diff

Drop two notebooks and read a per-cell diff with line-level highlights for code, markdown, and outputs—great for code review when nbdime is not installed.

How it works

Three steps from upload to download

1

Drop your notebook

Drag a .ipynb onto the card or browse your files. You never create an account.

2

Choose the export

Select Word, PDF, Markdown, HTML, LaTeX, ZIP, Python tools, viewer, cleaner, merger, or splitter—whatever matches your reviewer.

3

Download and ship

Grab the finished file immediately. Open it locally, attach it to email, or upload it to your LMS.

Also available

Try our other free tools

Notebook diff viewer: compare two Jupyter notebooks side by side, online

This notebook diff viewer answers a small but painful question: what actually changed between two .ipynb files? Drop the baseline on the left, the revised version on the right, and read a per-cell diff with line-level highlights for added, removed, and changed code. The whole comparison runs in your browser, so the notebooks never leave your machine—useful when you review someone else's work on a locked-down laptop or you want a second opinion on a private experiment without setting up nbdime.

Most teams discover that a plain `git diff` on a notebook is unreadable: execution counts shift on every run, output cells balloon the diff with base64 image data, and JSON ordering masks real changes. The viewer here parses both files into the same notebook shape used by Jupyter, hashes every cell, and walks a longest-common-subsequence so identical or merely-moved cells line up cleanly. Real edits surface as a small unified hunk per cell instead of thousands of noisy JSON lines.

If you usually rely on nbdime, jupyter nbdiff, ReviewNB, or VS Code's notebook diff, this page complements them rather than replaces them. It is the path you take when nbdime is not installed, when the reviewer is on a Chromebook, when the notebook lives outside Git, or when you just want to share a quick before/after with a colleague. There is nothing to install, no account to make, and the result is always a recognisable side-by-side report.

Toggle Ignore whitespace when one side has been reformatted and you only care about meaningful changes. Toggle Show unchanged cells when you need full context for a code review. Click Download .diff to grab a unified text patch you can paste into a code review tool or attach to a ticket. Use the swap button to flip baseline and revised when you realise you loaded them in the wrong order.

Why this notebook diff viewer is built for review

Side-by-side cell diff with line highlights

Each changed cell renders with the baseline on the left, the revision on the right, and only the modified lines highlighted—so you focus on the real edits instead of scrolling through a forest of unchanged JSON.

Smart matching that ignores Jupyter noise

We hash cells on type and source, then walk an LCS to align them. Cells you only moved still register as unchanged, and execution counts or output IDs do not muddy the report.

Three states surfaced clearly

Added, removed, and changed cells get their own colour and badge, with a summary bar that counts every kind of change so the reviewer knows the size of the diff before reading it.

Works in the browser, no upload

Both notebooks parse and diff inside your tab. Closing the page wipes the comparison—nothing sits on a server. That matters for client work, internal research, or homework you cannot share.

Download a portable .diff text file

Export a unified diff with cell anchors so you can paste it into a pull request comment, attach it to an email, or archive it next to the notebook for a paper trail.

Ignore-whitespace toggle for reformatted code

When Black, Ruff, or autopep8 has touched the file, switch on Ignore whitespace and the viewer treats spacing changes as equal so only the real edits remain.

How to compare two Jupyter notebooks online

  1. 01

    Drop the baseline notebook on the left

    Pick the older or accepted version. The viewer parses it instantly and shows a summary chip with the cell counts you expect.

  2. 02

    Drop the revised notebook on the right

    Pick the newer or proposed version. As soon as both sides are loaded the diff renders below.

  3. 03

    Read, refine, and export

    Toggle Ignore whitespace or Show unchanged to suit the review, then download a .diff if your workflow needs the patch as a text artefact.

Frequently asked questions about Jupyter diff

Open this notebook diff viewer, drop the baseline .ipynb on the left and the revised one on the right. The diff renders automatically with added, removed, and changed cells highlighted side by side.