skillfed

jupyter-server-documents

A JupyterLab extension that provides RTC capabilities.

jupyter-server-documents v0.3.3 127.4K downloads/30d#11,743 on PyPI18
Permissive license BSD 3-Clause License Copyright (c) 2025, Project Jupyter All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the… (full text in the JSON record) Active released

What it is and what it does

Jupyter Server Documents is a JupyterLab extension that shifts notebook and document state management from the client to the server, enabling real-time collaboration between multiple users. It replaces the standard Jupyter document handling with a server-backed architecture built on jupyter-ydoc and pycrdt, allowing simultaneous edits, automatic conflict resolution, and proper handling of out-of-band changes (such as git checkout). The extension also improves kernel management with more reliable execution and connection handling.

The package includes an optional outputs service that stores notebook outputs separately from the document on disk, reducing memory usage and speeding up navigation for notebooks with large computational results. When disabled (the default), outputs remain in the standard YDoc and .ipynb file. Installation is straightforward via pip; the extension integrates directly into JupyterLab 4.4.0 or later and requires Python 3.10 or higher.

Use it for:

  • Enable multiple data scientists to edit and run the same notebook simultaneously without conflicts or data loss.
  • Reduce server memory footprint for notebooks with extensive outputs by storing outputs separately on disk.
  • Improve notebook load times and responsiveness when working with computationally intensive analyses.
  • Ensure reliable kernel execution and recovery in team environments where network interruptions or restarts are common.
  • Maintain document integrity when notebooks are modified outside JupyterLab (e.g., via git operations).

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

A JupyterLab extension that moves document state to the server, enabling real-time collaboration, automatic saving, and optional off-disk output storage for improved performance.

Yes. The extension is actively maintained (released 7 days ago), has no known vulnerabilities, low install friction, and a permissive BSD license. It solves a real problem—collaborative notebook editing with server-side state—and is built on stable Jupyter infrastructure. Best suited for teams or researchers who need real-time collaboration or who work with large outputs; individual users on older JupyterLab versions (< 4.4.0) should verify compatibility first.

Install

jupyter-server-documents on PyPI

pip

pip install jupyter-server-documents

uv

uv add jupyter-server-documents

poetry

poetry add jupyter-server-documents

Installing jupyter-server-documents

Before you install

Low friction installation as a pure Python wheel. Actively maintained with a release 7 days ago. Requires JupyterLab >= 4.4.0 and Python >= 3.10; supports current Python versions (3.10–3.13). Six runtime dependencies are all within the Jupyter ecosystem.

License in practice

BSD 3-Clause License permits commercial and private use with minimal restrictions; you must retain copyright notices and disclaimers in source and binary distributions. No patent or trademark concerns for typical use.

Quickstart

pip install jupyter-server-documents

# Then start JupyterLab normally:
jupyter lab

# Optionally enable outputs service in jupyter_server_config.py:
# c.OutputProcessor.use_outputs_service = True

Requires JupyterLab >= 4.4.0 and Python >= 3.10. The extension is a server plugin; no direct Python import is needed for basic use.

Verify before relying

  • Whether the outputs service feature (optional, off by default) is production-ready or still experimental.
  • Performance impact of real-time collaboration under high concurrency or with very large notebooks.
  • Compatibility with existing JupyterLab extensions that may also manage document state or kernel communication.

Package facts

License BSD 3-Clause License Copyright (c) 2025, Project Jupyter All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the… (full text in the JSON record) (permissive)
Python support supports the current Python release (>=3.10)
Install friction low — pure-Python wheel
Runtime dependencies 6 — jupyter-collaboration-ui, jupyter-docprovider, jupyter-server-fileid, jupyter-server, jupyter-ydoc, pycrdt
Maintenance actively maintained — 7 days since the last release
Last repo commit
First released
Downloads 127,444/month — #11,743 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: jupyter_server_documents-0.3.3-py3-none-any.whl

Keywords: jupyter, jupyterlab, jupyterlab-extension

Framework :: JupyterFramework :: Jupyter :: JupyterLabFramework :: Jupyter :: JupyterLab :: 4Framework :: Jupyter :: JupyterLab :: ExtensionsFramework :: Jupyter :: JupyterLab :: Extensions :: PrebuiltLicense :: OSI Approved :: BSD LicenseProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13

Tags

jupyterlab real-time collaborationjupyter notebook server-side statejupyterlab rtc extensioncollaborative jupyter notebooksjupyter document synchronizationjupyterlab kernel managementjupyter notebook output caching
jupyterlab-extensionreal-time-collaborationjupyter-ecosystem

More Application Frameworks packages

fastapi

FastAPI is a Python web framework for building…

permissive · top 100 on PyPI

annotated-doc

Provides a way to document function parameters,…

permissive · top 100 on PyPI

textual

Textual is a Python framework for building…

permissive · top 100 on PyPI

typer

Typer builds command-line applications from…

permissive · top 1,000 on PyPI

mcp

Build and connect to Model Context Protocol…

permissive · top 1,000 on PyPI

Werkzeug

Werkzeug is a WSGI utility library providing…

permissive · top 1,000 on PyPI

jupyter-server-fileid

A Jupyter Server extension that provides a File…

permissive · top 5,000 on PyPI

jupyterlab-chat

A JupyterLab extension that adds a chat…

permissive · top 15,000 on PyPI

jupyterlab-server

Provides REST API handlers and utilities that…

permissive · top 1,000 on PyPI

jupyter-archive

A JupyterLab extension that adds archive…

permissive · top 15,000 on PyPI

nbclassic

Provides the classic Jupyter Notebook interface…

permissive · top 5,000 on PyPI

jupyterlab_notebook_awareness

A JupyterLab extension that tracks which…

permissive · top 15,000 on PyPI

jupyter-docprovider

Adds real-time collaborative editing to…

permissive · top 15,000 on PyPI

jupyter-collaboration

Adds real-time collaborative editing to…

permissive · top 15,000 on PyPI

jupyter-collaboration-ui

Adds real-time collaboration UI elements to…

permissive · top 15,000 on PyPI

jupyterlab-commands-toolkit

Exposes JupyterLab commands to Python code and…

permissive · top 15,000 on PyPI