Skip to main content

Document structures for collaborative editing using Ypy

Project description

Build Status Code style: black PyPI npm (scoped)

jupyter_ydoc

jupyter_ydoc provides pycrdt-based data structures for various documents used in the Jupyter ecosystem. Built-in documents include:

  • YBlob: a generic immutable binary document.
  • YUnicode: a generic UTF8-encoded text document (YFile is an alias to YUnicode).
  • YNotebook: a Jupyter notebook document.

These documents are registered via an entry point under the "jupyter_ydoc" group as "blob", "unicode" (or "file"), and "notebook", respectively. You can access them as follows:

from jupyter_ydoc import ydocs

print(ydocs)
# {
#     'blob': <class 'jupyter_ydoc.yblob.YBlob'>,
#     'file': <class 'jupyter_ydoc.yfile.YFile'>,
#     'notebook': <class 'jupyter_ydoc.ynotebook.YNotebook'>,
#     'unicode': <class 'jupyter_ydoc.yunicode.YUnicode'>
# }

Which is just a shortcut to:

from importlib.metadata import entry_points

ydocs = {ep.name: ep.load() for ep in entry_points(group="jupyter_ydoc")}

Or directly import them:

from jupyter_ydoc import YBlob, YUnicode, YNotebook

The "jupyter_ydoc" entry point group can be populated with your own documents, e.g. by adding the following to your package's pyproject.toml:

[project.entry-points.jupyter_ydoc]
my_document = "my_package.my_file:MyDocumentClass"

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

jupyter_ydoc-3.4.1.tar.gz (973.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

jupyter_ydoc-3.4.1-py3-none-any.whl (14.5 kB view details)

Uploaded Python 3

File details

Details for the file jupyter_ydoc-3.4.1.tar.gz.

File metadata

  • Download URL: jupyter_ydoc-3.4.1.tar.gz
  • Upload date:
  • Size: 973.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for jupyter_ydoc-3.4.1.tar.gz
Algorithm Hash digest
SHA256 fb31f0e7033b8a5bf8920334e2b3dd9bdaba3052de3164de28e14525fd0bc4d8
MD5 de2d9ab2bd5e9a08b62fe7eaa1250a5d
BLAKE2b-256 22f7400e8ee54adb2396f7a70a85a8951bc696303a9bd413c5e35cc6c0c5c214

See more details on using hashes here.

File details

Details for the file jupyter_ydoc-3.4.1-py3-none-any.whl.

File metadata

  • Download URL: jupyter_ydoc-3.4.1-py3-none-any.whl
  • Upload date:
  • Size: 14.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for jupyter_ydoc-3.4.1-py3-none-any.whl
Algorithm Hash digest
SHA256 848e5a9f37403846b7554b87d71495a38b6249579af64b1bde8de650b2e49d65
MD5 0f78e5c1a6129be8348cf31e77bb27bf
BLAKE2b-256 06ff15eca734d96277895573026dff14edd63d9d1709c02363f5902ea9767d71

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page