voila


Namevoila JSON
Version 0.5.6 PyPI version JSON
download
home_pageNone
SummaryVoilà turns Jupyter notebooks into standalone web applications
upload_time2024-04-02 13:35:34
maintainerNone
docs_urlNone
authorVoila Development Team
requires_python>=3.8
licenseBSD License Copyright (c) 2018 Voilà contributors. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: a. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. b. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. c. Neither the name of the authors nor the names of the contributors to this package may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
keywords jupyter jupyterlab voila
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # ![voila](docs/voila-logo.svg)

[![Documentation](http://readthedocs.org/projects/voila/badge/?version=latest)](https://voila.readthedocs.io/en/latest/?badge=latest)
[![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/voila-dashboards/voila/stable?urlpath=voila%2Ftree%2Fnotebooks)
[![Discourse](https://img.shields.io/badge/help_forum-discourse-blue.svg)](https://discourse.jupyter.org)
[![Join the Gitter Chat](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/QuantStack/Lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)

Rendering of live Jupyter notebooks with interactive widgets.

## Introduction

Voilà turns Jupyter notebooks into standalone web applications.

Unlike the usual HTML-converted notebooks, each user connecting to the Voilà
tornado application gets a dedicated Jupyter kernel which can execute the
callbacks to changes in Jupyter interactive widgets.

- By default, Voilà disallows execute requests from the front-end, preventing
  execution of arbitrary code.
- By default, Voilà runs with the `strip_sources` option, which strips out the
  input cells from the rendered notebook.

## Installation

Voilà can be installed with the mamba (or conda) package manager from conda-forge

```
mamba install -c conda-forge voila
```

or from PyPI

```
pip install voila
```

### JupyterLab preview extension

Voilà provides a JupyterLab extension that displays a Voilà preview of your Notebook in a side-pane.

Starting with JupyterLab 3.0, the extension is **automatically installed** after installing `voila`
with `pip install voila`.

If you would like to install the extension from source, run the following command.

```
jupyter labextension install @voila-dashboards/jupyterlab-preview
```

## Usage

### As a standalone tornado application

To render the `bqplot` example notebook as a standalone app, run
`voila bqplot.ipynb`.
To serve a directory of jupyter notebooks, run `voila` with no argument.

For example, to render the example notebook `bqplot.ipynb` from this repository with Voilà, you can first update your current environment with the requirements of this notebook (in this case in a [conda environment](https://docs.conda.io/projects/conda/en/latest/user-guide/tasks/manage-environments.html) and render the notebook with

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

For more command line options (e.g., to specify an alternate port number),
run `voila --help`.

### As a server extension to `notebook` or `jupyter_server`

Voilà can also be used as a Jupyter server extension, both with the
[notebook](https://github.com/jupyter/notebook) server or with
[jupyter_server](https://github.com/jupyter/jupyter_server).

To install the Jupyter server extension, run

```
jupyter serverextension enable voila
jupyter server extension enable voila
```

When running the Jupyter server, the Voilà app is accessible from the base url
suffixed with `voila`.

## Documentation

To get started with using Voilà, check out the full documentation:

https://voila.readthedocs.io/

## Examples

The following two examples show how a standalone Jupyter notebook can be turned into a separate app, from the command-line integration.

### Rendering a notebook including interactive widgets and rich mime-type rendering

![Voilà basics](voila-basics.gif)

### Rendering a notebook making use of a custom widget library ([bqplot](https://github.com/bloomberg/bqplot))

![Voilà bqplot](voila-bqplot.gif)

### Showing the source code for a Voilà notebook

The sources of the Jupyter notebook can be displayed in a Voilà app if option `strip_sources` is set to `False`.

![Voilà sources](voila-sources.gif)

### Voilà dashboards with other language kernels\*\*

Voilà is built upon Jupyter standard formats and protocols, and is agnostic to the programming language of the notebook. In this example, we present an example of a Voilà application powered by the C++ Jupyter kernel [xeus-cling](https://github.com/jupyter-xeus/xeus-cling), and the [xleaflet](https://github.com/jupyter-xeus/xleaflet) project.

![Voilà cling](voila-cling.gif)

## The Voilà Gallery

The [Voilà Gallery](https://voila-gallery.org) is a collection of live dashboards and applications built with Voilà and Jupyter widgets.

Most of the examples rely on widget libraries such as ipywidgets, ipyleaflet, ipyvolume, bqplot and ipympl, and showcase how to build complex web applications entirely based on notebooks.

New examples can be added to the gallery by following the steps listed in the [voila-gallery/gallery](https://github.com/voila-gallery/gallery) repository.

## Development

See [CONTRIBUTING.md](./CONTRIBUTING.md) to know how to contribute and set up a development environment.

## Related projects

Voilà depends on [nbconvert](https://github.com/jupyter/nbconvert) and
[jupyter_server](https://github.com/jupyter/jupyter_server/).

## License

We use a shared copyright model that enables all contributors to maintain the
copyright on their contributions.

This software is licensed under the BSD-3-Clause license. See the
[LICENSE](LICENSE) file for details.

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "voila",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": "Jupyter, JupyterLab, Voila",
    "author": "Voila Development Team",
    "author_email": null,
    "download_url": "https://files.pythonhosted.org/packages/e7/5d/8281a408b2636ed3b23ce44b6a203441db8e74be7de601b22e069229b713/voila-0.5.6.tar.gz",
    "platform": null,
    "description": "# ![voila](docs/voila-logo.svg)\n\n[![Documentation](http://readthedocs.org/projects/voila/badge/?version=latest)](https://voila.readthedocs.io/en/latest/?badge=latest)\n[![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/voila-dashboards/voila/stable?urlpath=voila%2Ftree%2Fnotebooks)\n[![Discourse](https://img.shields.io/badge/help_forum-discourse-blue.svg)](https://discourse.jupyter.org)\n[![Join the Gitter Chat](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/QuantStack/Lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)\n\nRendering of live Jupyter notebooks with interactive widgets.\n\n## Introduction\n\nVoil\u00e0 turns Jupyter notebooks into standalone web applications.\n\nUnlike the usual HTML-converted notebooks, each user connecting to the Voil\u00e0\ntornado application gets a dedicated Jupyter kernel which can execute the\ncallbacks to changes in Jupyter interactive widgets.\n\n- By default, Voil\u00e0 disallows execute requests from the front-end, preventing\n  execution of arbitrary code.\n- By default, Voil\u00e0 runs with the `strip_sources` option, which strips out the\n  input cells from the rendered notebook.\n\n## Installation\n\nVoil\u00e0 can be installed with the mamba (or conda) package manager from conda-forge\n\n```\nmamba install -c conda-forge voila\n```\n\nor from PyPI\n\n```\npip install voila\n```\n\n### JupyterLab preview extension\n\nVoil\u00e0 provides a JupyterLab extension that displays a Voil\u00e0 preview of your Notebook in a side-pane.\n\nStarting with JupyterLab 3.0, the extension is **automatically installed** after installing `voila`\nwith `pip install voila`.\n\nIf you would like to install the extension from source, run the following command.\n\n```\njupyter labextension install @voila-dashboards/jupyterlab-preview\n```\n\n## Usage\n\n### As a standalone tornado application\n\nTo render the `bqplot` example notebook as a standalone app, run\n`voila bqplot.ipynb`.\nTo serve a directory of jupyter notebooks, run `voila` with no argument.\n\nFor example, to render the example notebook `bqplot.ipynb` from this repository with Voil\u00e0, you can first update your current environment with the requirements of this notebook (in this case in a [conda environment](https://docs.conda.io/projects/conda/en/latest/user-guide/tasks/manage-environments.html) and render the notebook with\n\n```\nmamba env update -f .binder/environment.yml\ncd notebooks/\nvoila bqplot.ipynb\n```\n\nFor more command line options (e.g., to specify an alternate port number),\nrun `voila --help`.\n\n### As a server extension to `notebook` or `jupyter_server`\n\nVoil\u00e0 can also be used as a Jupyter server extension, both with the\n[notebook](https://github.com/jupyter/notebook) server or with\n[jupyter_server](https://github.com/jupyter/jupyter_server).\n\nTo install the Jupyter server extension, run\n\n```\njupyter serverextension enable voila\njupyter server extension enable voila\n```\n\nWhen running the Jupyter server, the Voil\u00e0 app is accessible from the base url\nsuffixed with `voila`.\n\n## Documentation\n\nTo get started with using Voil\u00e0, check out the full documentation:\n\nhttps://voila.readthedocs.io/\n\n## Examples\n\nThe following two examples show how a standalone Jupyter notebook can be turned into a separate app, from the command-line integration.\n\n### Rendering a notebook including interactive widgets and rich mime-type rendering\n\n![Voil\u00e0 basics](voila-basics.gif)\n\n### Rendering a notebook making use of a custom widget library ([bqplot](https://github.com/bloomberg/bqplot))\n\n![Voil\u00e0 bqplot](voila-bqplot.gif)\n\n### Showing the source code for a Voil\u00e0 notebook\n\nThe sources of the Jupyter notebook can be displayed in a Voil\u00e0 app if option `strip_sources` is set to `False`.\n\n![Voil\u00e0 sources](voila-sources.gif)\n\n### Voil\u00e0 dashboards with other language kernels\\*\\*\n\nVoil\u00e0 is built upon Jupyter standard formats and protocols, and is agnostic to the programming language of the notebook. In this example, we present an example of a Voil\u00e0 application powered by the C++ Jupyter kernel [xeus-cling](https://github.com/jupyter-xeus/xeus-cling), and the [xleaflet](https://github.com/jupyter-xeus/xleaflet) project.\n\n![Voil\u00e0 cling](voila-cling.gif)\n\n## The Voil\u00e0 Gallery\n\nThe [Voil\u00e0 Gallery](https://voila-gallery.org) is a collection of live dashboards and applications built with Voil\u00e0 and Jupyter widgets.\n\nMost of the examples rely on widget libraries such as ipywidgets, ipyleaflet, ipyvolume, bqplot and ipympl, and showcase how to build complex web applications entirely based on notebooks.\n\nNew examples can be added to the gallery by following the steps listed in the [voila-gallery/gallery](https://github.com/voila-gallery/gallery) repository.\n\n## Development\n\nSee [CONTRIBUTING.md](./CONTRIBUTING.md) to know how to contribute and set up a development environment.\n\n## Related projects\n\nVoil\u00e0 depends on [nbconvert](https://github.com/jupyter/nbconvert) and\n[jupyter_server](https://github.com/jupyter/jupyter_server/).\n\n## License\n\nWe use a shared copyright model that enables all contributors to maintain the\ncopyright on their contributions.\n\nThis software is licensed under the BSD-3-Clause license. See the\n[LICENSE](LICENSE) file for details.\n",
    "bugtrack_url": null,
    "license": "BSD License  Copyright (c) 2018 Voil\u00e0 contributors. All rights reserved.  Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:  a. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.  b. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.  c. Neither the name of the authors nor the names of the contributors to this package may be used to endorse or promote products derived from this software without specific prior written permission.   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.",
    "summary": "Voil\u00e0 turns Jupyter notebooks into standalone web applications",
    "version": "0.5.6",
    "project_urls": {
        "Homepage": "https://github.com/voila-dashboards/voila"
    },
    "split_keywords": [
        "jupyter",
        " jupyterlab",
        " voila"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "84baf0afb96e99418fbe0930ad6066eddb1e8c6d0b3c368c42723fbd8bb24d98",
                "md5": "9cdc056c2c5b8cf81425eecea3fbc33c",
                "sha256": "3ed7a2199c5271e0ef29cb1982d76000fda247f73023ee8425c0b00b8cfbc17f"
            },
            "downloads": -1,
            "filename": "voila-0.5.6-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "9cdc056c2c5b8cf81425eecea3fbc33c",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 3948506,
            "upload_time": "2024-04-02T13:35:31",
            "upload_time_iso_8601": "2024-04-02T13:35:31.203750Z",
            "url": "https://files.pythonhosted.org/packages/84/ba/f0afb96e99418fbe0930ad6066eddb1e8c6d0b3c368c42723fbd8bb24d98/voila-0.5.6-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "e75d8281a408b2636ed3b23ce44b6a203441db8e74be7de601b22e069229b713",
                "md5": "c7db08936de2ac89ba4b681952242777",
                "sha256": "2d64208a19b55267cb51530be6489523445881f2e6e3d5e596d962d2fe833b62"
            },
            "downloads": -1,
            "filename": "voila-0.5.6.tar.gz",
            "has_sig": false,
            "md5_digest": "c7db08936de2ac89ba4b681952242777",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 5110667,
            "upload_time": "2024-04-02T13:35:34",
            "upload_time_iso_8601": "2024-04-02T13:35:34.093331Z",
            "url": "https://files.pythonhosted.org/packages/e7/5d/8281a408b2636ed3b23ce44b6a203441db8e74be7de601b22e069229b713/voila-0.5.6.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-04-02 13:35:34",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "voila-dashboards",
    "github_project": "voila",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "voila"
}
        
Elapsed time: 0.37112s