Skip to main content

Turn Jupyter Notebook to Web App and share with non-technical users

Project description

Mercury convert Jupyter Notebook to Web App

Tests PyPI version Anaconda-Server Badge

Build Web Apps in Jupyter Notebook

Mercury allows you to add interactive widgets in Python notebooks, so you can share notebooks as web applications. Forget about rewriting notebooks to web frameworks just to share your results. Mercury offers a set of widgets with simple re-execution of cells.

You can build with Mercury:

  • Turn your notebook into beautiful Web Apps,

  • Create interactive Presentations with widgets, you can recompute slides during the show,

  • Share notebooks as static Websites,

  • Build data-rich Dashboards with widgets,

  • Create Reports with PDF exports, automatic scheduling, and email notifications (coming soon),

  • Serve Python notebooks as REST API endpoints (coming soon).

Mercury features:

  • add widgets with Python code - no frontend experience needed!
  • hide or show notebook's code,
  • export executed notebook to PDF or HTML,
  • share muplitple notebooks - no limits!
  • embed notebook on any website,
  • easy file upload and download from the notebook,
  • add authentication to notebooks (coming soon),
  • schedule automatic notebook execution (coming soon).


Simple code example that creates a widget and displays its value. You can interact with a widget in the Jupyter Notebook. Its value will be updated. However, to see the update in other cells you need to manually execute them.

Import package:

import mercury as mr

Create a Text widget:

name = mr.Text(value="Piotr", label="What is your name?")

Print widget value:

print(f"Hello {name.value}")

Code in Jupyter Notebook

Web App from Notebook

Mercury App

Use Mercury to run notebook as web application. Cells are automatically re-executed after widget change. Mercury re-executes only cells with widget definition and below it. In the example, cells 2 and 3 are re-executed after widget update.

Web App from Notebook


📚 Read more about Mercury on


Compatible with Python 3.7 and higher.

Install with pip:

pip install mercury

Install with conda:

conda install -c conda-forge mercury


Run Mercury with demo notebooks.

mercury run demo

Please check to see demo notebooks.

Mercury with your notebooks

To run Mercury with your notebook, please execute the following:

mercury run

The command should be run in the same directory as notebooks. You can change code in Jupyter Notebook, and Mercury will instantly update web app.

Mercury License

Mercury is released with AGPL v3 license.

Looking for dedicated support, a commercial-friendly license, and more features? The Mercury Pro is for you. Please see the details at our website.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mercury-2.2.2.tar.gz (2.6 MB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page