Rendering von Live-Jupyter-Notebooks mit interaktiven Widgets.
Voilà verwandelt Jupyter-Notebooks in eigenständige Webanwendungen.
Im Gegensatz zu den üblichen HTML-konvertierten Notizbüchern erhält jeder Benutzer, der sich mit der Voilà-Tornado-Anwendung verbindet, einen dedizierten Jupyter-Kernel, der die Rückrufe auf Änderungen in interaktiven Jupyter-Widgets ausführen kann.
Standardmäßig verbietet Voilà Ausführungsanfragen vom Frontend und verhindert so die Ausführung von beliebigem Code.
Standardmäßig wird Voilà mit der Option strip_sources
ausgeführt, die die Eingabezellen aus dem gerenderten Notizbuch entfernt.
Voilà kann mit dem Mamba- (oder Conda-)Paketmanager von Conda-Forge installiert werden
mamba install -c conda-forge voila
oder von PyPI
pip install voila
Voilà bietet eine JupyterLab-Erweiterung, die eine Voilà-Vorschau Ihres Notebooks in einem Seitenbereich anzeigt.
Ab JupyterLab 3.0 wird die Erweiterung nach der Installation voila
mit pip install voila
automatisch installiert .
Wenn Sie die Erweiterung von der Quelle installieren möchten, führen Sie den folgenden Befehl aus.
jupyter labextension install @voila-dashboards/jupyterlab-preview
Um das bqplot
Beispielnotizbuch als eigenständige App zu rendern, führen Sie voila bqplot.ipynb
aus. Um ein Verzeichnis mit Jupyter-Notebooks bereitzustellen, führen Sie voila
ohne Argument aus.
Um beispielsweise das Beispielnotizbuch bqplot.ipynb
aus diesem Repository mit Voilà zu rendern, können Sie zunächst Ihre aktuelle Umgebung mit den Anforderungen dieses Notizbuchs aktualisieren (in diesem Fall in einer Conda-Umgebung) und das Notizbuch mit rendern
mamba env update -f .binder/environment.yml cd notebooks/ voila bqplot.ipynb
Für weitere Befehlszeilenoptionen (z. B. um eine alternative Portnummer anzugeben) führen Sie voila --help
aus.
notebook
oder jupyter_server
Voilà kann auch als Jupyter-Server-Erweiterung verwendet werden, sowohl mit dem Notebook-Server als auch mit jupyter_server.
Um die Jupyter-Servererweiterung zu installieren, führen Sie Folgendes aus:
jupyter serverextension enable voila jupyter server extension enable voila
Wenn der Jupyter-Server ausgeführt wird, kann auf die Voilà-App über die Basis-URL mit dem Suffix voila
zugegriffen werden.
Um mit der Verwendung von Voilà zu beginnen, schauen Sie sich die vollständige Dokumentation an:
https://voila.readthedocs.io/
Die folgenden beiden Beispiele zeigen, wie ein eigenständiges Jupyter-Notebook durch die Befehlszeilenintegration in eine separate App umgewandelt werden kann.
Die Quellen des Jupyter-Notebooks können in einer Voilà-App angezeigt werden, wenn die Option strip_sources
auf False
gesetzt ist.
Voilà basiert auf Jupyter-Standardformaten und -Protokollen und ist unabhängig von der Programmiersprache des Notebooks. In diesem Beispiel präsentieren wir ein Beispiel einer Voilà-Anwendung, die auf dem C++-Jupyter-Kernel xeus-cling und dem xleaflet-Projekt basiert.
Die Voilà-Galerie ist eine Sammlung von Live-Dashboards und Anwendungen, die mit Voilà- und Jupyter-Widgets erstellt wurden.
Die meisten Beispiele basieren auf Widget-Bibliotheken wie ipywidgets, ipyleaflet, ipyvolume, bqplot und ipympl und zeigen, wie man komplexe Webanwendungen vollständig auf der Grundlage von Notebooks erstellt.
Neue Beispiele können der Galerie hinzugefügt werden, indem Sie die im voila-gallery/gallery-Repository aufgeführten Schritte ausführen.
Unter CONTRIBUTING.md erfahren Sie, wie Sie einen Beitrag leisten und eine Entwicklungsumgebung einrichten.
Voilà hängt von nbconvert und jupyter_server ab.
Wir verwenden ein gemeinsames Urheberrechtsmodell, das es allen Mitwirkenden ermöglicht, das Urheberrecht an ihren Beiträgen zu wahren.
Diese Software ist unter der BSD-3-Klausel-Lizenz lizenziert. Einzelheiten finden Sie in der LICENSE-Datei.