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

Uploaded Python 3

File details

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

File metadata

  • Download URL: jupyter_ydoc-4.0.0a3.tar.gz
  • Upload date:
  • Size: 974.0 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.0a3.tar.gz
Algorithm Hash digest
SHA256 a9e39b46e73b0b0743a4bb5841d38f91f7f8a0f3a2743305db58356a174bf0d6
MD5 ec0a5bdd54d4a78e155da94d42d03eb8
BLAKE2b-256 dc7087c4f3246bfd927f05daf822ac00f98cd06b6c3109c32472cc5c1c6f2db3

See more details on using hashes here.

File details

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

File metadata

  • Download URL: jupyter_ydoc-4.0.0a3-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.0a3-py3-none-any.whl
Algorithm Hash digest
SHA256 e8ccd9e2ec74dc9364f2dc877645a7fe5f3cc7a12b462fb18b482c1eb3fccee6
MD5 5d96725c7c212587ab906024007ca190
BLAKE2b-256 b87616f60200edf15c4911f2104078442d5205ed70212e68c54dfe1862df3fce

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