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-4.0.0a1.tar.gz (973.8 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-4.0.0a1-py3-none-any.whl (14.6 kB view details)

Uploaded Python 3

File details

Details for the file jupyter_ydoc-4.0.0a1.tar.gz.

File metadata

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

File hashes

Hashes for jupyter_ydoc-4.0.0a1.tar.gz
Algorithm Hash digest
SHA256 32e2ecb94ec4772d4c36334b14d30dab9cc01ac4525437914724411ccfff18a2
MD5 3d3e8b443b384d189d30fdf6498b8722
BLAKE2b-256 966dff062f42848c26e07a763efe2df69021ec56a3862ef013471f03bb49f351

See more details on using hashes here.

File details

Details for the file jupyter_ydoc-4.0.0a1-py3-none-any.whl.

File metadata

  • Download URL: jupyter_ydoc-4.0.0a1-py3-none-any.whl
  • Upload date:
  • Size: 14.6 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-4.0.0a1-py3-none-any.whl
Algorithm Hash digest
SHA256 2eb4f6800ea5e13f9c65e5c7faa3731bbbdb4d129b7039bfe6d07dcb56d403ac
MD5 61c2a25a0b4607d5364228452587cfc4
BLAKE2b-256 47d01517228e5465d15ad82af890668ec947675eb857c7e2e245f9b61ebc7680

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