About Pyodide

Python with the scientific stack, compiled to WebAssembly.

Pyodide may be used in any context where you want to run Python inside a web browser.

Pyodide brings the Python 3.9 runtime to the browser via WebAssembly, along with the Python scientific stack including NumPy, Pandas, Matplotlib, SciPy, and scikit-learn. The packages directory lists over 75 packages which are currently available. In addition it’s possible to install pure Python wheels from PyPi.

Pyodide provides transparent conversion of objects between Javascript and Python. When used inside a browser, Python has full access to the Web APIs.

History

Pyodide was created in 2018 by Michael Droettboom at Mozilla as part of the Iodide project. Iodide is an experimental web-based notebook environment for literate scientific computing and communication.

Contributing

See the contributing guide for tips on filing issues, making changes, and submitting pull requests. Pyodide is an independent and community-driven open-source project. The decision making process is outlined in Governance and Decision-making.

Citing

If you use Pyodide for a scientific publication, we would appreciate citations. Please find us on Zenodo and use the citation for the version you are using. You can replace the full author list from there with “The Pyodide development team” like in the example below:

@software{michael_droettboom_2021_5135072,
  author       = {The Pyodide development team},
  title        = {pyodide/pyodide},
  month        = jul,
  year         = 2021,
  publisher    = {Zenodo},
  version      = {0.18.0a1},
  doi          = {10.5281/zenodo.5135072},
  url          = {https://doi.org/10.5281/zenodo.5135072}
}

License

Pyodide uses the Mozilla Public License Version 2.0.

Infrastructure support

We would like to thank,