2020-10-24 23:57:45 +05:30
---
stage: Create
group: Source Code
2022-11-25 23:54:43 +05:30
info: "To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/product/ux/technical-writing/#assignments"
2020-10-24 23:57:45 +05:30
type: reference
---
2021-12-11 22:18:48 +05:30
# Jupyter Notebook files **(FREE)**
2020-03-13 15:44:24 +05:30
2021-12-11 22:18:48 +05:30
[Jupyter Notebook ](https://jupyter.org/ ) (previously, IPython Notebook) files are used for
interactive computing in many fields. They contain a complete record of the
user's sessions and include:
2020-03-13 15:44:24 +05:30
2021-12-11 22:18:48 +05:30
- Code.
- Narrative text.
- Equations.
- Rich output.
2020-03-13 15:44:24 +05:30
2021-12-11 22:18:48 +05:30
When you add a Jupyter Notebook (with `.ipynb` extension) to your repository,
it's rendered into HTML when you view it:
2020-03-13 15:44:24 +05:30
![Jupyter Notebook Rich Output ](img/jupyter_notebook.png )
2021-04-17 20:07:23 +05:30
Interactive features, including JavaScript plots, don't work when viewed in
2020-03-13 15:44:24 +05:30
GitLab.
2022-07-16 23:28:13 +05:30
## Cleaner diffs and raw diffs
2021-12-11 22:18:48 +05:30
2023-06-20 00:43:36 +05:30
> - [Introduced](https://gitlab.com/groups/gitlab-org/-/epics/6589) in GitLab 14.5 as an [Experiment](../../../../policy/alpha-beta-support.md#experiment) release [with a flag](../../../../administration/feature_flags.md) named `jupyter_clean_diffs`. Enabled by default.
2022-05-07 20:08:51 +05:30
> - [Generally available](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/75500) in GitLab 14.9. Feature flag `jupyter_clean_diffs` removed.
2022-06-21 17:19:12 +05:30
> - [Reintroduced toggle](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/85079) in GitLab 15.0 [with a flag](../../../../administration/feature_flags.md) named `ipynb_semantic_diff`. Enabled by default.
2023-01-13 00:05:48 +05:30
> - [Generally available](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/95373) in GitLab 15.6. Feature flag `ipynb_semantic_diff` removed.
2022-07-16 23:28:13 +05:30
2021-12-11 22:18:48 +05:30
When commits include changes to Jupyter Notebook files, GitLab:
- Transforms the machine-readable `.ipynb` file into a human-readable Markdown file.
- Displays a cleaner version of the diff that includes syntax highlighting.
2022-07-16 23:28:13 +05:30
- Enables switching between raw and rendered diffs on the Commit and Compare pages. (Not available on merge request pages.)
2023-01-13 00:05:48 +05:30
- Renders images on the diffs.
2021-12-11 22:18:48 +05:30
Code suggestions are not available on diffs and merge requests for `.ipynb` files.
2023-01-13 00:05:48 +05:30
Cleaner notebook diffs are not generated when the notebook is too large.
2021-12-11 22:18:48 +05:30
2023-01-13 00:05:48 +05:30
![Jupyter Notebook Clean Diff ](img/jupyter_notebook_diff_v14_5.png )
2022-06-21 17:19:12 +05:30
2020-03-13 15:44:24 +05:30
## Jupyter Git integration
2021-09-04 01:27:46 +05:30
Jupyter can be configured as an OAuth application with repository access, acting
on behalf of the authenticated user. See the
[Runbooks documentation ](../../../project/clusters/runbooks/index.md ) for an
example configuration.