Skip to main content

Voilà 将 Jupyter 笔记本变成独立的 Web 应用程序

项目描述

瞧

文档 粘合剂 加入 Gitter 聊天

使用交互式小部件渲染实时 Jupyter 笔记本。

介绍

Voilà 将 Jupyter 笔记本变成了独立的 Web 应用程序。

与通常的 HTML 转换笔记本不同,每个连接到 Voilà tornado 应用程序的用户都会获得一个专用的 Jupyter 内核,该内核可以执行对 Jupyter 交互式小部件更改的回调。

  • 默认情况下,Voilà 不允许执行来自前端的请求,从而防止执行任意代码。
  • 默认情况下,Voilà 使用该strip_source选项运行,该选项从渲染的笔记本中删除输入单元格。

安装

Voilà 可以使用来自 conda-forge 的 mamba(或 conda)包管理器安装

mamba install -c conda-forge voila

或来自 PyPI

pip install voila

JupyterLab 预览扩展

Voilà 提供了一个 JupyterLab 扩展,可在侧窗格中显示 Notebook 的 Voilà 预览。

从 JupyterLab 3.0开始voila 使用pip install voila.

如果您想从源代码安装扩展,请运行以下命令。

jupyter labextension install @voila-dashboards/jupyterlab-preview

用法

作为独立的龙卷风应用程序

要将bqplot示例笔记本呈现为独立应用程序,请运行 voila bqplot.ipynb. 要为 jupyter 笔记本目录提供服务,请voila不带参数运行。

例如,要bqplot.ipynb使用 Voilà 渲染此存储库中的示例笔记本,您可以首先使用此笔记本的要求更新当前环境(在本例中,在conda 环境中并使用

mamba env update -f .binder/environment.yml
cd notebooks/
voila bqplot.ipynb

如需更多命令行选项(例如,指定备用端口号),请运行voila --help.

作为服务器扩展notebookjupyter_server

Voilà 也可以用作 Jupyter 服务器扩展,既可以与 notebook服务器一起使用,也可以与 jupyter_server一起使用。

要安装 Jupyter 服务器扩展,请运行

jupyter serverextension enable voila
jupyter server extension enable voila

运行 Jupyter 服务器时,可以从后缀为voila.

文档

要开始使用 Voilà,请查看完整文档:

https://voila.readthedocs.io/

例子

以下两个示例展示了如何通过命令行集成将独立的 Jupyter 笔记本转变为单独的应用程序。

渲染笔记本,包括交互式小部件和丰富的 mime 类型渲染

Voilà 基础知识

使用自定义小部件库 ( bqplot )渲染笔记本

瞧,bqplot

显示 Voilà 笔记本的源代码

strip_sources如果选项设置为 ,则可以在 Voilà 应用程序中显示 Jupyter 笔记本的源代码False

瞧来源

带有其他语言内核的 Voilà 仪表板**

Voilà 建立在 Jupyter 标准格式和协议之上,并且与 notebook 的编程语言无关。在此示例中,我们展示了一个由 C++ Jupyter 内核xeus- cling和xleaflet项目提供支持的 Voilà 应用程序示例。

瞧,紧贴

瞧画廊

Voilà Gallery是使用 Voilà 和 Jupyter 小部件构建的实时仪表板和应用程序的集合。

大多数示例依赖于 ipywidgets、ipyleaflet、ipyvolume、bqplot 和 ipympl 等小部件库,并展示了如何完全基于笔记本构建复杂的 Web 应用程序。

可以按照voila-gallery/gallery存储库中列出的步骤将新示例添加到图库中。

发展

请参阅CONTRIBUTING.md以了解如何贡献和设置开发环境。

相关项目

瞧,取决于nbconvertjupyter_server

执照

我们使用共享版权模型,使所有贡献者能够维护其贡献的版权。

该软件根据 BSD-3-Clause 许可证获得许可。有关详细信息,请参阅 许可证文件。