Paul Krill
Editor at Large

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

news
Apr 23, 20212 mins

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

Exploding binary numbers
Credit: 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.

Paul Krill

Paul Krill is editor at large at InfoWorld. Paul has been covering computer technology as a news and feature reporter for more than 35 years, including 30 years at InfoWorld. He has specialized in coverage of software development tools and technologies since the 1990s, and he continues to lead InfoWorld’s news coverage of software development platforms including Java and .NET and programming languages including JavaScript, TypeScript, PHP, Python, Ruby, Rust, and Go. Long trusted as a reporter who prioritizes accuracy, integrity, and the best interests of readers, Paul is sought out by technology companies and industry organizations who want to reach InfoWorld’s audience of software developers and other information technology professionals. Paul has won a “Best Technology News Coverage” award from IDG.

More from this author