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

Uploaded Python 3

File details

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

File metadata

  • Download URL: jupyter_ydoc-4.0.0.tar.gz
  • Upload date:
  • Size: 974.3 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.0.tar.gz
Algorithm Hash digest
SHA256 292763304364103cf796c85bd55fb6fa3fba08b9076e45b68c4d1ac266380fc5
MD5 21af615916d3ae3b97912106c0f59ccf
BLAKE2b-256 1ede72a8a7c1e10eac782562d648c08240bd4a4e0ddd33bbe36b2960ccee58b6

See more details on using hashes here.

File details

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

File metadata

  • Download URL: jupyter_ydoc-4.0.0-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-4.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c3ddc776a7bc9e930fec7affc63e1b5ebb212361fcb7d1224042b5381b7fb60c
MD5 cc5d87f42b334383592d166324c838f2
BLAKE2b-256 a391afd06c452c2de8172cc3fc031b49a42b6dd3acdf6cd7b301326876a3266d

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