跳转到主要内容

JupyterLab和JupyterLite的文档协作,由y-webrtc提供支持

项目描述

jupyterlab-webrtc-docprovider

install from PyPI reuse from npm install from conda-forge demo on Binder GitHub Actions

JupyterLab支持的文档协作,由y-webrtc提供支持。

要求

如何使用

  • 安装软件包
  • 配置服务器以支持协作
  • 启动支持协作的基于Lumino的Jupyter客户端
    • 例如,JupyterLab 3.1+、RetroLab 0.3+或JupyterLite(beta)
  • 使用room URL参数打开客户端
    • 例如,http://localhost:8888/lab?room=demo
    • 可选提供usernameusercolor
      • 例如,http://localhost:8888/lab?room=demo&username=jo&usercolor=e65100
    • 这些参数可能将被消耗,但没关系
  • 打开共享编辑活动,如笔记本编辑器

安装

要安装扩展,请运行

                 pip install jupyterlab-webrtc-docprovider
mamba install -c conda-forge jupyterlab-webrtc-docprovider
conda install -c conda-forge jupyterlab-webrtc-docprovider

有关开发安装,请参阅贡献指南

它的工作原理

与 JupyterLab 内置的、基于 WebSocket 的协同文档提供程序不同,jupyterlab-webrtc-docprovider依赖于

配置

服务器配置

Jupyter 服务器使用 jupyter_server_config.json 进行配置

{
  "LabServerApp": {
    "collaborative": true
  }
}

协同

必须启用此标志才能使用提供程序。

在 JupyterLite 中,这是 jupyter-lite.jsonjupyter-config-data 的可配置项。

客户端配置

用户可配置的设置可以预先填充在 {sys.prefix}/share/jupyter/lab/settings/overrides.json 中:roomPrefixsignalingUrls 与安全相关。

{
  "@jupyterlite/webrtc-docprovider:plugin": {
    "disabled": false,
    "room": "an pre-shared room name",
    "roomPrefix": "a-very-unique-name",
    "signalingUrls": [
      "wss://y-webrtc-signaling-eu.herokuapp.com",
      "wss://y-webrtc-signaling-us.herokuapp.com",
      "wss://signaling.yjs.dev"
    ],
    "usercolor": "f57c00",
    "username": "Jo V. Un"
  }
}

在 JupyterLite 中,这可以通过 overrides.json 进行配置

roomPrefix

默认情况下,实际发送到信令服务器的最终房间 ID 将是配置的房间前缀和所选房间名称的 SHA256 哈希。

默认情况下,此前缀是提供网站的域名,但对于常见的 URL(如 localhost),应选择更随机的前缀。

signalingUrls

默认情况下,提供了一组公共信令服务器,如上所述 y-webrtc

注意:如名称所示,信令服务器应只了解您交换的高层元数据,并且应该通过标准的 SSL 加密来保护免受第三方访问。

然而,实际部署不应该在运行时依赖于免费托管服务。需要一些研究来找到适合您特定部署的适当服务器。

username

在共享编辑会话中,显示在您的光标旁边的名称。

usercolor

在共享编辑会话中,建议您的光标颜色。

卸载

要删除扩展,请运行

  pip uninstall jupyterlab_webrtc_docprovider
mamba uninstall jupyterlab_webrtc_docprovider
conda uninstall jupyterlab_webrtc_docprovider

开源

此作品根据BSD 3-Clause License许可。

代码最初是从 JupyterLiteJupyterLab 中提取的,它们也受 BSD 3-Clause License 的保护。

应用于 simple-peerint64-buffer 的两个供应商补丁(特别感谢 @datakurre),这两个都是 MIT 许可证,希望有一天能合并。

项目详情


下载文件

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

源分布

jupyterlab-webrtc-docprovider-0.1.1.tar.gz (387.2 kB 查看哈希)

上传时间

构建分布

jupyterlab_webrtc_docprovider-0.1.1-py3-none-any.whl (517.8 kB 查看哈希)

上传时间 Python 3

支持者