ypywidgets


Nameypywidgets JSON
Version 0.9.4 PyPI version JSON
download
home_pageNone
SummaryY-based Jupyter widgets for Python
upload_time2024-10-16 07:26:48
maintainerNone
docs_urlNone
authorNone
requires_python>=3.8
licenseNone
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/QuantStack/ypywidgets/workflows/test/badge.svg)](https://github.com/QuantStack/ypywidgets/actions)
[![Code Coverage](https://img.shields.io/badge/coverage-100%25-green)](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/61/b5/659177b24aaa58aaa539a420066a523c2a3413b19e48e3103bd9a36ec8cc/ypywidgets-0.9.4.tar.gz",
    "platform": null,
    "description": "[![Build Status](https://github.com/QuantStack/ypywidgets/workflows/test/badge.svg)](https://github.com/QuantStack/ypywidgets/actions)\n[![Code Coverage](https://img.shields.io/badge/coverage-100%25-green)](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.4",
    "project_urls": {
        "Homepage": "https://github.com/davidbrochart/ypywidgets"
    },
    "split_keywords": [
        "jupyter",
        " widgets",
        " yjs"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "5281312f6edd8133c9399b89ef286cbef4069e0329b3460fce80baa3859d06b0",
                "md5": "8c213d5474b69f3cb09b922efcbfe643",
                "sha256": "50b963b4966a0bf9383904f59ba39b0b47494c687d5f1426dc03ee686f578fd0"
            },
            "downloads": -1,
            "filename": "ypywidgets-0.9.4-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "8c213d5474b69f3cb09b922efcbfe643",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 5060,
            "upload_time": "2024-10-16T07:26:47",
            "upload_time_iso_8601": "2024-10-16T07:26:47.357942Z",
            "url": "https://files.pythonhosted.org/packages/52/81/312f6edd8133c9399b89ef286cbef4069e0329b3460fce80baa3859d06b0/ypywidgets-0.9.4-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "61b5659177b24aaa58aaa539a420066a523c2a3413b19e48e3103bd9a36ec8cc",
                "md5": "61ae51593ec2ee151f5729c955050265",
                "sha256": "78ee67a034fa7131197a5e42ba86c9e9428767a4176dc10e5cf6e4d409132c1e"
            },
            "downloads": -1,
            "filename": "ypywidgets-0.9.4.tar.gz",
            "has_sig": false,
            "md5_digest": "61ae51593ec2ee151f5729c955050265",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 5618,
            "upload_time": "2024-10-16T07:26:48",
            "upload_time_iso_8601": "2024-10-16T07:26:48.299534Z",
            "url": "https://files.pythonhosted.org/packages/61/b5/659177b24aaa58aaa539a420066a523c2a3413b19e48e3103bd9a36ec8cc/ypywidgets-0.9.4.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-10-16 07:26:48",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "davidbrochart",
    "github_project": "ypywidgets",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "ypywidgets"
}
        
Elapsed time: 0.35768s