Skip to content
forked from pyodide/pyodide

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

License

Notifications You must be signed in to change notification settings

Carreau/pyodide

This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

6a4059c · Jul 29, 2024
Jul 26, 2024
Jul 26, 2024
Jul 29, 2024
Apr 4, 2024
Jul 28, 2024
Jul 29, 2024
Jun 19, 2024
Jul 29, 2024
Jul 29, 2024
Jul 26, 2024
Feb 24, 2022
Sep 5, 2022
Nov 8, 2020
Sep 6, 2018
Apr 10, 2024
Apr 12, 2023
Jul 21, 2024
Sep 19, 2023
May 27, 2024
Jan 10, 2022
Jul 26, 2024
Feb 23, 2018
Jul 26, 2024
Jul 26, 2024
Jul 15, 2024
Oct 24, 2022
Jul 28, 2024
Jul 21, 2024
Jul 29, 2024
Feb 4, 2024
Jul 16, 2024
Mar 8, 2022
May 25, 2024
Jul 25, 2024
Mar 15, 2024

Repository files navigation

NPM Latest Release PyPI Latest Release Build Status Documentation Status

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

What is Pyodide?

Pyodide is a port of CPython to WebAssembly/Emscripten.

Pyodide makes it possible to install and run Python packages in the browser with micropip. Any pure Python package with a wheel available on PyPi is supported. Many packages with C extensions have also been ported for use with Pyodide. These include many general-purpose packages such as regex, PyYAML, lxml and scientific Python packages including NumPy, pandas, SciPy, Matplotlib, and scikit-learn.

Pyodide comes with a robust Javascript ⟺ Python foreign function interface so that you can freely mix these two languages in your code with minimal friction. This includes full support for error handling, async/await, and much more.

When used inside a browser, Python has full access to the Web APIs.

Try Pyodide (no installation needed)

Try Pyodide in a REPL directly in your browser. For further information, see the documentation.

Getting Started

Pyodide offers three different ways to get started depending on your needs and technical resources. These include:

  • Use a hosted distribution of Pyodide: see the Getting Started documentation.
  • Download a version of Pyodide from the releases page and serve it with a web server.
  • Build Pyodide from source
    • Build natively with make: primarily for Linux users who want to experiment or contribute back to the project.
    • Use a Docker image: recommended for Windows and macOS users and for Linux users who prefer a Debian-based Docker image with the dependencies already installed.

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.

Iodide is no longer maintained. If you want to use Pyodide in an interactive client-side notebook, see Pyodide notebook environments.

Contributing

Please view 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 the Project governance.

Communication

License

Pyodide uses the Mozilla Public License Version 2.0.

About

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

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 64.0%
  • C 15.8%
  • TypeScript 12.1%
  • JavaScript 3.3%
  • Shell 1.1%
  • Makefile 1.0%
  • Other 2.7%