Name | ypywidgets JSON |
Version |
0.9.7
JSON |
| download |
home_page | None |
Summary | Y-based Jupyter widgets for Python |
upload_time | 2025-02-04 08:32:55 |
maintainer | None |
docs_url | None |
author | None |
requires_python | >=3.8 |
license | None |
keywords |
jupyter
widgets
yjs
|
VCS |
 |
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
[](https://github.com/QuantStack/ypywidgets/actions)
[](https://img.shields.io/badge/coverage-100%25-green)
# ypywidgets: Y-based Jupyter widgets for Python
`ypywidgets` is a communication backend between a Jupyter kernel and clients. It allows to synchronize data structures that can be modified concurrently, and automatically resolves conflicts. To do so, it uses:
- the Jupyter kernel [Comm](https://jupyter-client.readthedocs.io/en/stable/messaging.html#custom-messages) protocol as the transport layer, and the [comm](https://github.com/ipython/comm) implementation of it.
- the [pycrdt](https://github.com/jupyter-server/pycrdt) CRDT implementation.
- the [reacttrs](https://github.com/QuantStack/reacttrs) library that implements the observer pattern and validation.
It is a replacement for (a part of) [ipywidgets](https://ipywidgets.readthedocs.io). When used with [yjs-widgets](https://github.com/QuantStack/yjs-widgets), it supports JupyterLab clients that implement widgets. The difference with `ipywidgets` is that these widgets are collaborative: they can be manipulated concurrently from the kernel or from any client. The CRDT algorithm ensures that a widget state will eventually be consistent across all clients.
Raw data
{
"_id": null,
"home_page": null,
"name": "ypywidgets",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": null,
"keywords": "jupyter, widgets, yjs",
"author": null,
"author_email": "David Brochart <david.brochart@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/46/54/548106c7c40ddc7f4d74cae984e0dd68d57dabb542e3ed4748021c4ce2a9/ypywidgets-0.9.7.tar.gz",
"platform": null,
"description": "[](https://github.com/QuantStack/ypywidgets/actions)\n[](https://img.shields.io/badge/coverage-100%25-green)\n\n# ypywidgets: Y-based Jupyter widgets for Python\n\n`ypywidgets` is a communication backend between a Jupyter kernel and clients. It allows to synchronize data structures that can be modified concurrently, and automatically resolves conflicts. To do so, it uses:\n- the Jupyter kernel [Comm](https://jupyter-client.readthedocs.io/en/stable/messaging.html#custom-messages) protocol as the transport layer, and the [comm](https://github.com/ipython/comm) implementation of it.\n- the [pycrdt](https://github.com/jupyter-server/pycrdt) CRDT implementation.\n- the [reacttrs](https://github.com/QuantStack/reacttrs) library that implements the observer pattern and validation.\n\nIt is a replacement for (a part of) [ipywidgets](https://ipywidgets.readthedocs.io). When used with [yjs-widgets](https://github.com/QuantStack/yjs-widgets), it supports JupyterLab clients that implement widgets. The difference with `ipywidgets` is that these widgets are collaborative: they can be manipulated concurrently from the kernel or from any client. The CRDT algorithm ensures that a widget state will eventually be consistent across all clients.\n",
"bugtrack_url": null,
"license": null,
"summary": "Y-based Jupyter widgets for Python",
"version": "0.9.7",
"project_urls": {
"Homepage": "https://github.com/davidbrochart/ypywidgets"
},
"split_keywords": [
"jupyter",
" widgets",
" yjs"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "3a07436016f1d704bde674b44e90d95101c8f8fabcc636294f30b356fc71b097",
"md5": "bf20dfde4373091651d4dd409cfb3501",
"sha256": "98afc04ae01db3d924b832199c60db993680786fe63ad9dabcf50698223e127b"
},
"downloads": -1,
"filename": "ypywidgets-0.9.7-py3-none-any.whl",
"has_sig": false,
"md5_digest": "bf20dfde4373091651d4dd409cfb3501",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 5180,
"upload_time": "2025-02-04T08:32:51",
"upload_time_iso_8601": "2025-02-04T08:32:51.647775Z",
"url": "https://files.pythonhosted.org/packages/3a/07/436016f1d704bde674b44e90d95101c8f8fabcc636294f30b356fc71b097/ypywidgets-0.9.7-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "4654548106c7c40ddc7f4d74cae984e0dd68d57dabb542e3ed4748021c4ce2a9",
"md5": "8e6fad16a914376928b5757c05cb8e1f",
"sha256": "c80d8aa72fd0d1f0880ae66f2b57c311f64ae14a2615d84fbd9fba36628d43d4"
},
"downloads": -1,
"filename": "ypywidgets-0.9.7.tar.gz",
"has_sig": false,
"md5_digest": "8e6fad16a914376928b5757c05cb8e1f",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 5728,
"upload_time": "2025-02-04T08:32:55",
"upload_time_iso_8601": "2025-02-04T08:32:55.575402Z",
"url": "https://files.pythonhosted.org/packages/46/54/548106c7c40ddc7f4d74cae984e0dd68d57dabb542e3ed4748021c4ce2a9/ypywidgets-0.9.7.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-02-04 08:32:55",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "davidbrochart",
"github_project": "ypywidgets",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "ypywidgets"
}