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.0a0.tar.gz (973.7 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.0a0-py3-none-any.whl (14.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: jupyter_ydoc-4.0.0a0.tar.gz
  • Upload date:
  • Size: 973.7 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.0a0.tar.gz
Algorithm Hash digest
SHA256 01839ef3ec65a598ba0e1c1961ab9b2f661c60dd6d4704750633f0e60f2d0358
MD5 2fdee17e8c04d68b1209f94a0ef4bc16
BLAKE2b-256 a30b62f424798c33de97f1252f1ef5a65871b9b748c9a40f0fb8fe9d3c60071d

See more details on using hashes here.

File details

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

File metadata

  • Download URL: jupyter_ydoc-4.0.0a0-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.0a0-py3-none-any.whl
Algorithm Hash digest
SHA256 e6f8c99848908558100e85c0da168edaaff8a9a195a3ce2aa7f257c75a456e3c
MD5 75d2caef4304ab8b4010330d365e9d91
BLAKE2b-256 f18b798d3f324bf2bbb2bae6ca8da3f2e8611e569fc27770f2aa5631847d776b

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