Jupyter Collaboration
raw JSON → 4.3.0 verified Fri May 01 auth: no python
Real-time collaboration extension for JupyterLab and Jupyter Notebook 7+. Metapackage bringing together server-side (pycrdt-websocket-based) and client-side collaboration components. Current version 4.3.0, released 2025-05-01. Monthly release cadence.
pip install jupyter-collaboration Common errors
error ModuleNotFoundError: No module named 'jupyter_collaboration' ↓
cause The metapackage is not installed, but may be listed as a dependency.
fix
Run: pip install jupyter-collaboration
error Extension @jupyter/collaboration-extension failed to load: unable to import 'jupyter_collaboration' ↓
cause The server extension is not enabled or the metapackage is missing.
fix
Enable the server extension: jupyter server extension enable jupyter_collaboration or reinstall with pip.
error ValueError: Could not find a WebSocket connection ↓
cause Jupyter server is not configured for collaboration, or WebSocket is blocked by proxy.
fix
Start JupyterLab with --collaborative flag or enable the extension in config. Check proxy for WebSocket support.
Warnings
gotcha jupyter-collaboration is a metapackage; it does not expose any Python importable API. It only activates JupyterLab client extension and server extension. ↓
fix Do not attempt to import anything from this package in Python code. Use jupyter_server extension configuration or command-line flags.
breaking Version 4.x requires JupyterLab 4.x or Jupyter Notebook 7.x. It is not backward-compatible with JupyterLab 3.x. ↓
fix Upgrade your environment: JupyterLab >=4.0.0, Python >=3.8.
deprecated The --collaborative flag is deprecated in favor of enabling the collaboration extension in the Jupyter config or UI. ↓
fix Enable the extension via jupyter labextension enable @jupyter/collaboration-extension or set jupyter_collaborative = True in jupyter_server_config.py.
gotcha Real-time collaboration requires a WebSocket-capable proxy or direct connection. Behind reverse proxies (e.g., nginx), you must configure WebSocket upgrade headers. ↓
fix Ensure your proxy supports WebSocket upgrade (e.g., 'Upgrade' and 'Connection' headers).
Imports
- jupyter_collaboration wrong
from jupyter_collaboration import ...correctimport jupyter_collaboration
Quickstart
# Install and enable extensions
pip install jupyter-collaboration
# Run JupyterLab with collaboration enabled
jupyter lab --collaborative