Name | ypywidgets JSON |
Version |
0.7.0
JSON |
| download |
home_page | None |
Summary | Y-based Jupyter widgets for Python |
upload_time | 2024-04-19 12:20:11 |
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.
|
[![Build Status](https://github.com/davidbrochart/ypywidgets/workflows/CI/badge.svg)](https://github.com/davidbrochart/ypywidgets/actions)
# 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/davidbrochart/pycrdt) CRDT implementation.
- the [declare](https://github.com/willmcgugan/declare) 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/davidbrochart/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/dc/ec/03712051616840c6de42b9776a2abb7d27d4054e9fa498f901cba5e79dd4/ypywidgets-0.7.0.tar.gz",
"platform": null,
"description": "[![Build Status](https://github.com/davidbrochart/ypywidgets/workflows/CI/badge.svg)](https://github.com/davidbrochart/ypywidgets/actions)\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/davidbrochart/pycrdt) CRDT implementation.\n- the [declare](https://github.com/willmcgugan/declare) 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/davidbrochart/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.7.0",
"project_urls": {
"Homepage": "https://github.com/davidbrochart/ypywidgets"
},
"split_keywords": [
"jupyter",
" widgets",
" yjs"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "c27b59e4ffee3fb8d0a07cec88bf004512bedbbd86545439984ee5b4c079ab87",
"md5": "968f320ce4ad33ef25190f54547fae85",
"sha256": "b6cfdeb11e36882a0ab1fcca1dad061fadce04d90e30174647ac4e27a9e84c89"
},
"downloads": -1,
"filename": "ypywidgets-0.7.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "968f320ce4ad33ef25190f54547fae85",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 5944,
"upload_time": "2024-04-19T12:20:09",
"upload_time_iso_8601": "2024-04-19T12:20:09.500479Z",
"url": "https://files.pythonhosted.org/packages/c2/7b/59e4ffee3fb8d0a07cec88bf004512bedbbd86545439984ee5b4c079ab87/ypywidgets-0.7.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "dcec03712051616840c6de42b9776a2abb7d27d4054e9fa498f901cba5e79dd4",
"md5": "4777e2f5c07dc1ab7bc395be0b97deaf",
"sha256": "e0b6a7a1e57afa22a2d6631fb15eb7c93b847452e5a20faf63d44bd620467fdb"
},
"downloads": -1,
"filename": "ypywidgets-0.7.0.tar.gz",
"has_sig": false,
"md5_digest": "4777e2f5c07dc1ab7bc395be0b97deaf",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 4497,
"upload_time": "2024-04-19T12:20:11",
"upload_time_iso_8601": "2024-04-19T12:20:11.966296Z",
"url": "https://files.pythonhosted.org/packages/dc/ec/03712051616840c6de42b9776a2abb7d27d4054e9fa498f901cba5e79dd4/ypywidgets-0.7.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-04-19 12:20:11",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "davidbrochart",
"github_project": "ypywidgets",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "ypywidgets"
}