jupyterlab-deepnote is a JupyterLab extension that enables you to open and view Deepnote project files (.deepnote format) directly within JupyterLab. This extension provides a seamless read-only viewer for Deepnote notebooks, allowing you to explore Deepnote projects without leaving your JupyterLab environment.
Key features
- Open Deepnote files: View
.deepnoteproject files containing Deepnote notebooks in JupyterLab - Multi-notebook support: Switch between multiple notebooks within a single
.deepnotefile - Read-only mode: View notebook content safely without modifying the original
.deepnotefile - Seamless integration: Works natively with JupyterLab's notebook interface
- Deepnote block support: Renders Deepnote-specific block types as Jupyter cells
Installation
Requirements
- Python: 3.10 or higher
- JupyterLab: 4.4.0 or higher
Install via pip
Install the extension using pip, see our PyPI page:
pip install jupyterlab-deepnote
The extension will be automatically enabled after installation.
Verify installation
Check that the extension is properly installed and enabled:
# Check server extension jupyter server extension list # Check frontend extension jupyter labextension list
You should see jupyterlab_deepnote listed in both outputs.
Opening Deepnote files
-
Launch JupyterLab:
-
Open a
.deepnotefile:- Use the file browser to navigate to your
.deepnotefile - Double-click the file to open it in the notebook viewer
- Use the file browser to navigate to your
-
Switch between notebooks (if the
.deepnotefile contains multiple notebooks):- Use the notebook picker dropdown in the toolbar
- Select the notebook you want to view
Architecture
This extension consists of two main components:
- Server extension: Handles
.deepnotefile parsing and conversion to Jupyter notebook format. Not all the blocks are supported; visit docs to learn more - Frontend extension: Provides the JupyterLab UI integration and notebook picker widget
The extension uses a custom content provider to intercept .deepnote file requests and transform them into Jupyter-compatible notebook content.
Troubleshooting
Extension not loading
If the extension doesn't appear to be working:
-
Verify installation:
jupyter server extension list jupyter labextension list
-
Rebuild JupyterLab (if installed from source):
-
Check for errors:
Common issues
.deepnotefiles not opening: Ensure the file extension is exactly.deepnote- Missing notebooks: Verify the
.deepnotefile contains valid YAML-formatted Deepnote project data - Extension conflicts: Try disabling other notebook-related extensions temporarily
Getting help
If you encounter issues:
- Check the GitHub Issues for similar problems
- Review the CONTRIBUTING.md for development setup
- Open a new issue with detailed information about your environment and the problem
Uninstall
To remove the extension:
pip uninstall jupyterlab_deepnote
After uninstalling, restart JupyterLab for the changes to take effect.
Compatibility
JupyterLab version support
This extension is compatible with JupyterLab 4.4.0 or higher. It requires the content provider registry API introduced in JupyterLab 4.4.
Upper bound: The extension sets an upper bound of < 5.0.0 to prevent automatic installation with potentially incompatible future major versions of JupyterLab.
Maintenance policy
Following JupyterLab's extension development guidelines, we adhere to semantic versioning principles:
- Major releases (e.g., 1.0.0 → 2.0.0): May introduce breaking changes and require user action
- Minor releases (e.g., 1.0.0 → 1.1.0): Add new features while maintaining backwards compatibility
- Patch releases (e.g., 1.0.0 → 1.0.1): Bug fixes and minor improvements only
When JupyterLab 5.x is released, we will:
- Evaluate the changes and update the extension as needed
- Release a new major or minor version with explicit JupyterLab 5.x support
- Clearly document any breaking changes in the changelog
Backwards compatibility
This extension follows semantic versioning for its own API:
- Current version (0.x.x): Pre-release phase. APIs may change without prior notice.
- Version 1.0.0 onwards: We will maintain backwards compatibility within major versions and clearly document breaking changes between major versions.
Note: This extension does not support JupyterLab 3.x or earlier versions.
Need help?
- Join our Community!
- Open an issue for bug reports or feature requests
- Check out source code of related repositories: Deepnote Open Source, JupyterLab extension and Deepnote Toolkit.
- Check out our documentation
- Want a low-code experience? Visit Deepnote Cloud together with Deepnote AI agent
Contributing
For development setup, testing, and contributing guidelines, please see CONTRIBUTING.md.
Built with 💙