Mozilla’s experimental Pyodide project is bringing a Python data science stack to the web browser, by compiling it to WebAssembly. Pyodide is a WebAssembly implementation of Python’s Numpy scientific computing library, the Pandas data analysis library, and parts of the SciPy library for math, science, and engineering. Python’s Matplotlib plotting library is incorporated as well.
- The compiled Python interpreter as WebAssembly.
- All of the files needed by the Python interpreter, including the Python standard library.
While these files can be large, the packages only have to be downloaded once, whereupon they are stored in the browser cache.
You can try out Pyodide by running a demo notebook from the Iodide website. (Requires a 50 MB download.) Instructions for building Pyodide can be found on GitHub.