Turns Jupyter notebooks into standalone web applications and dashboards

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

Our great sponsors
  • OPS - Build and Run Open Source Unikernels
  • Scout APM - Less time debugging, more time building
  • SonarQube - Static code analysis for 29 languages.
  • GitHub repo streamlit

    Streamlit — The fastest way to build data apps in Python

    Note that there's also streamlit [1]. It uses regular python files, rather than notebooks, so they can be easily version controlled. And it has more UI tools.

    [1]: https://streamlit.io/

  • GitHub repo jupyterlite

    Wasm powered Jupyter running in the browser 💡

  • OPS

    OPS - Build and Run Open Source Unikernels. Quickly and easily build and deploy open source unikernels in tens of seconds. Deploy in any language to any cloud.

  • GitHub repo pyodide

    Pyodide is a Python distribution for the browser and Node.js based on WebAssembly

    You can, with pyodine: https://github.com/pyodide/pyodide

    Here is an example instance: https://notebook.basthon.fr/

    The thing is, creating a whole stack in pure JS would be very hard, since the current scientific stacks uses a lot of fortran, assembly and C with python to bind them all. Or julia. It's millions of man hours we are talking about.

    So compiling Python into WASM is probably the best deal for such an app.

    For the regular web, it would be a deal breaker: you don't want to load 15 mo of runtime before being able to interact with a web page. But for such a scientific app, it's not a problem. Besides, were you to write it entirely in JS, the size would be huge as well.

  • GitHub repo starboard-notebook

    In-browser literal notebooks

    You could consider an in browser notebook to get your cost down to near nothing - it depends a bit on what kind of tasks your students do whether they fit in the browser (one wouldn't train a large neural network in one for instance)

    There's Starboard (which I'm building, it's built specifically for the browser and can integrate into a larger app deeply) and JupyterLite (the closest you will get to JupyterLab in the browser), either can be a good choice depending on your requirements. Both use Pyodide for the Python runtime.

    [1]: https://github.com/gzuidhof/starboard-notebook, demo: https://starboard.gg

    [2]: https://jupyterlite.readthedocs.io/en/latest/

  • GitHub repo panel

    A high-level app and dashboarding solution for Python (by holoviz)

  • GitHub repo xeus-cling

    Jupyter kernel for the C++ programming language

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts