创建新的前端扩展#

简介#

JupyterLite 中有两种类型的扩展

  • 前端扩展

  • 服务器扩展

前端扩展是 JupyterLab 扩展,旨在扩展 JupyterLab 和 Notebook UI 的界面和功能。

此类扩展的示例包括

本指南介绍前端扩展。如果您想创建服务器扩展,请查看 服务器扩展指南

创建扩展#

由于 JupyterLite 重用了与 JupyterLab 相同的扩展系统,因此您可以像开发普通 JupyterLab 扩展一样开发扩展。

创建新环境#

最佳实践是为扩展开发创建一个新环境。您可以使用 mamba 来完成此操作

mamba create -n my-jupyterlite-extension -c conda-forge python nodejs
mamba activate my-jupyterlite-extension

遵循扩展教程#

遵循 扩展教程 开始。

完成教程后,您应该在 JupyterLab 中激活扩展的新本地文件夹。

在 JupyterLite 中加载扩展#

默认情况下,JupyterLite 能够在 PREFIX/share/labextensions 下的相同环境中找到安装的 JupyterLab 扩展。

jupyterlite-core CLI 默认情况下会自动执行此操作。在您的本地环境中

  1. 使用以下命令安装 jupyter lite CLI:pip install jupyterlite-core

  2. 构建网站:jupyter lite build。在构建日志中,您应该看到类似以下内容,表明扩展已正确找到并复制

...
federated_extensions:copy:ext:jupyterlab_apod
.  pre_build:federated_extensions:copy:ext:jupyterlab_apod
...
  1. 启动网站:jupyter lite serve

然后在浏览器中打开 https://127.0.0.1:8000,您应该能够看到已加载的 Astronomy Picture of the Day (APOD) 扩展

apod-tutorial

如果您迭代并对扩展进行新的更改

  • 使用 jlpm run build 重新构建扩展

  • 重新运行 jupyter lite build

  • 刷新页面

注意

默认情况下,jupyterlite-core 包不包含任何内核。如果您希望在测试 JupyterLite 部署中使用 Python 内核,可以使用 pip 安装 jupyterlite-pyodide-kernel 包,或将其添加到您的依赖项列表中。

发布扩展#

扩展运行后,您可能希望将其发布到 PyPI,以便其他人可以安装它。

默认情况下,从模板创建的扩展与 Jupyter Releaser 兼容。

Jupyter Releaser 简化了发布过程并确保最佳实践。

您可以在 JupyterLab 文档 上了解更多关于发布扩展的信息。