Mozilla spins out Pyodide Python-in-the-browser project

Project for running Python and its scientific stack in web browsers via WebAssembly will be maintained by volunteer contributors.

Mozilla spins out Pyodide Python-in-the-browser project
Thinkstock

Pyodide has been spun out by Mozilla into an independent, community-driven project. Consisting of the CPython 3.8 interpreter compiled to WebAssembly, Pyodide allows Python to run in web browsers.

The Pyodide project has a new home in a separate GitHub organization, at github.com/pyodide, with documentation at pyodide.org. The project will be maintained by volunteers. A governance document has been published along with a project roadmap, which outlines goals such as better performance of Python code, reducing download sizes, and simplification of package loading.

Pyodide can install any Python package with a pure Python wheel from PyPi, the Python Package Index). Pyodide also includes a foreign function interface that exposes Python packages to JavaScript and exposes the browser UI, including the DOM, to Python. The project also makes many Python scientific packages, including NumPy, Pandas, Matplotlib, SciPy, and Scikit-learn, available to run in the browser.

Developers can try out Pyodide in a REPL in their browser. Along with announcing the independence of the project on April 22, Mozilla also announced the release of Pyodide 0.17, which features major maintenance improvements, a redesign of central APIs, and the elimination of error and memory leaks.

Originally developed within Mozilla to allow use of Python in the Iodide project supporting data science in the browser, Pyodide has attracted a lot of interest and is being used in many projects outside Mozilla. Although Mozilla made the “difficult” decision to wind down the Iodide project, the organization still maintains the project repo at alpha.iodide.io for now. Mozilla does not recommend using Iodide for important work, as it could shut down in the future.

In spinning out Pyodide and winding down Iodide, Mozilla follows what has become a familiar pattern for the organization. Mozilla, which laid off 250 persons in 2020 as part of a restructuring, announced in February that it had transferred assets of the Mozilla-sponsored Rust language to the Rust Foundation. Mozilla transferred the Servo browser engine to the Linux Foundation last November.

Copyright © 2021 IDG Communications, Inc.

How to choose a low-code development platform