Renderização de notebooks Jupyter ao vivo com widgets interativos.
Voilà transforma notebooks Jupyter em aplicativos da web independentes.
Ao contrário dos notebooks normais convertidos em HTML, cada usuário que se conecta ao aplicativo Voilà tornado recebe um kernel Jupyter dedicado que pode executar retornos de chamada para alterações nos widgets interativos do Jupyter.
Por padrão, Voilà não permite a execução de solicitações do front-end, evitando a execução de código arbitrário.
Por padrão, o Voilà é executado com a opção strip_sources
, que remove as células de entrada do notebook renderizado.
Voilà pode ser instalado com o gerenciador de pacotes mamba (ou conda) do conda-forge
mamba install -c conda-forge voila
ou do PyPI
pip install voila
Voilà fornece uma extensão JupyterLab que exibe uma visualização Voilà do seu Notebook em um painel lateral.
A partir do JupyterLab 3.0, a extensão é instalada automaticamente após a instalação voila
com pip install voila
.
Se você deseja instalar a extensão da fonte, execute o seguinte comando.
jupyter labextension install @voila-dashboards/jupyterlab-preview
Para renderizar o bloco de notas de exemplo bqplot
como um aplicativo independente, execute voila bqplot.ipynb
. Para servir um diretório de notebooks Jupyter, execute voila
sem argumentos.
Por exemplo, para renderizar o notebook de exemplo bqplot.ipynb
deste repositório com Voilà, você pode primeiro atualizar seu ambiente atual com os requisitos deste notebook (neste caso em um ambiente conda e renderizar o notebook com
mamba env update -f .binder/environment.yml cd notebooks/ voila bqplot.ipynb
Para obter mais opções de linha de comando (por exemplo, para especificar um número de porta alternativo), execute voila --help
.
notebook
ou jupyter_server
Voilà também pode ser usado como extensão do servidor Jupyter, tanto com o servidor notebook quanto com jupyter_server.
Para instalar a extensão do servidor Jupyter, execute
jupyter serverextension enable voila jupyter server extension enable voila
Ao executar o servidor Jupyter, o aplicativo Voilà pode ser acessado a partir do URL base com o sufixo voila
.
Para começar a usar o Voilà, confira a documentação completa:
https://voila.readthedocs.io/
Os dois exemplos a seguir mostram como um notebook Jupyter independente pode ser transformado em um aplicativo separado, a partir da integração de linha de comando.
As fontes do notebook Jupyter podem ser exibidas em um aplicativo Voilà se a opção strip_sources
estiver definida como False
.
Voilà é baseado em formatos e protocolos padrão Jupyter e é independente da linguagem de programação do notebook. Neste exemplo, apresentamos um exemplo de aplicativo Voilà desenvolvido com o kernel C++ Jupyter xeus-cling e o projeto xleaflet.
A Galeria Voilà é uma coleção de painéis e aplicativos dinâmicos criados com widgets Voilà e Jupyter.
A maioria dos exemplos depende de bibliotecas de widgets, como ipywidgets, ipyleaflet, ipyvolume, bqplot e ipympl, e mostram como construir aplicativos web complexos inteiramente baseados em notebooks.
Novos exemplos podem ser adicionados à galeria seguindo as etapas listadas no repositório voila-gallery/gallery.
Consulte CONTRIBUTING.md para saber como contribuir e configurar um ambiente de desenvolvimento.
Voilà depende de nbconvert e jupyter_server.
Usamos um modelo de direitos autorais compartilhados que permite que todos os colaboradores mantenham os direitos autorais de suas contribuições.
Este software está licenciado sob a licença BSD-3-Clause. Consulte o arquivo LICENSE para obter detalhes.