跳转到主要内容

Y-Sweet服务器的Python绑定

项目描述

y_sweet_sdk

用法

from y_sweet_sdk import DocumentManager

# Get the websocket url for a document.
doc = DocumentManager('ys://127.0.0.1:8080')
url = doc.get_websocket_url('my-document-id')

# Connect to the document using y_py and ypy_websocket.
# (Based on: https://davidbrochart.github.io/ypy-websocket/usage/client/)
from ypy_websocket import WebsocketProvider
import y_py as Y
from websockets import connect
import asyncio

ydoc = Y.YDoc()

# Simple example: log the array "todolist" to stdout every time it changes.
data = ydoc.get_array("todolist")
def data_changed(event: Y.AfterTransactionEvent):
    print(f"data changed: {data.to_json()}")

data.observe_deep(data_changed)

async with (
    connect(url) as websocket,
    WebsocketProvider(ydoc, websocket),
):
    await asyncio.Future()  # run forever

y_sweet_sdk仅用于直接与Y-Sweet服务器通信以获取传递给客户端的WebSocket URL。使用类似于ypy-websocketpycrdt的Yjs客户端与y_sweet_sdk一起使用,以访问实际的Y.Doc数据。

安装

使用测试依赖项进行开发安装

pip install -e ".[dev]"

测试

首先运行y-sweet服务器

npx y-sweet serve

然后运行测试

pytest

开发

在提交更改之前运行ruff format以进行格式化。

项目详情


下载文件

下载适合您平台的文件。如果您不确定要选择哪个,请了解更多关于安装包的信息。

源分布

y_sweet_sdk-0.5.0.tar.gz (5.1 kB 查看哈希值)

上传时间:

构建分布

y_sweet_sdk-0.5.0-py3-none-any.whl (5.2 kB 查看哈希值)

上传时间 Python 3

由以下支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面