I would like to share with you a project that I’m working on. It is a framework called Mercury for easy sharing of notebooks as web apps. Any notebook can be converted into a web app by adding a YAML header (similar to the R markdown). Based on the YAML config the widgets are generated in the sidebar. Users can select parameters values and click Run to execute the notebook. Notebook is executed with user input and displayed as HTML. The result can be also downloaded. The code of the notebook can be hidden. Mercury has app gallery built-in to serve multiple notebooks.
Below few screenshots:
Notebooks (apps) gallery:
The Mercury is an open-source, available at GitHub: https://github.com/mljar/mercury - it has AGPLv3 license. For companies looking for a commercial-friendly license, dedicated support, and more features there is a commercial license.
The example demo is running at http://mercury.mljar.com (no need to register).
Mercury frontend is built in Typescript with React+Redux, the server is in Python+Django, the worker is in Python+Celery+nbconvert.
In the future I would like to add:
- easy scheduling of the notebooks,
- Jupyter extension for one-click deploy
I’m looking for your feedback and comments. Thank you!