2019-06-22 00:25:44 +00:00
# [Pyodide](https://github.com/iodide-project/pyodide)
2018-02-24 17:52:47 +00:00
2018-11-07 21:15:43 +00:00
2018-06-05 01:11:32 +00:00
[![Build Status ](https://circleci.com/gh/iodide-project/pyodide.png )](https://circleci.com/gh/iodide-project/pyodide)
2019-10-21 14:39:17 +00:00
[![Documentation Status ](https://readthedocs.org/projects/pyodide/badge/?version=latest )](https://pyodide.readthedocs.io/?badge=latest)
2018-03-30 18:10:03 +00:00
2018-06-07 19:50:53 +00:00
The Python scientific stack, compiled to WebAssembly.
2019-06-22 00:25:44 +00:00
## What is Pyodide?
2020-07-07 14:21:33 +00:00
**Pyodide** brings the Python 3.8 runtime to the browser via WebAssembly, along with the Python scientific stack including NumPy, Pandas, Matplotlib, parts of SciPy, and NetworkX. The [`packages` directory ](https://github.com/iodide-project/pyodide/tree/master/packages ) lists over 35 packages which are currently available.
2018-02-23 19:34:33 +00:00
2019-06-22 00:25:44 +00:00
**Pyodide** provides transparent conversion of objects between Javascript and Python.
When used inside a browser, Python has full access to the Web APIs.
2018-06-22 18:54:59 +00:00
2019-06-22 00:25:44 +00:00
While closely related to the [iodide project ](https://iodide.io ), a tool for *literate scientific computing and communication for the web* , Pyodide goes beyond running in a notebook environment. To maximize the flexibility of the modern web, **Pyodide** may
be used standalone in any context where you want to **run Python inside a web
browser**.
## Try Pyodide (no installation needed)
2020-05-19 16:14:56 +00:00
Try the [iodide demo notebook ](https://alpha.iodide.io/notebooks/300/ ) or fire
2020-05-20 16:58:43 +00:00
up a [Python REPL ](https://pyodide-cdn2.iodide.io/latest/full/console.html ) directly in your
2020-05-19 16:14:56 +00:00
browser.
2020-05-12 06:39:13 +00:00
For further information, look through the [documentation ](https://pyodide.readthedocs.io/ ).
2018-06-07 19:43:04 +00:00
2019-06-22 00:25:44 +00:00
## Getting Started
Pyodide offers three different ways to get started depending on your needs and technical resources.
These include:
2019-05-31 20:02:51 +00:00
2020-05-19 16:14:56 +00:00
- Use hosted distribution of pyodide: see [using pyodide from
Javascript](https://pyodide.readthedocs.io/en/latest/using_pyodide_from_javascript.html)
documentation.
- Download a pre-built version from this
repository's [releases
page](https://github.com/iodide-project/pyodide/releases/) and serve its contents with
a web server.
- [Build Pyodide from source ](https://pyodide.readthedocs.io/en/latest/building_from_sources.html )
- Build natively with `make` : primarily for Linux users who want to
experiment or contribute back to the project.
- [Use a Docker image ](https://pyodide.readthedocs.io/en/latest/building_from_sources.html#using-docker ):
recommended for Windows and macOS users and for Linux users who prefer a
Debian-based Docker image with the dependencies already installed.
2018-10-08 19:33:33 +00:00
2019-06-22 00:25:44 +00:00
## Contributing
2020-05-19 16:14:56 +00:00
Please view the
2020-06-30 09:25:24 +00:00
[contributing guide ](https://pyodide.readthedocs.io/en/latest/contributing.html )
2020-05-19 16:14:56 +00:00
for tips on filing issues, making changes, and submitting pull requests.
2018-04-11 14:17:02 +00:00
2019-06-22 00:25:44 +00:00
## License
2018-06-14 18:19:08 +00:00
2019-06-22 00:25:44 +00:00
Pyodide uses the Mozilla Public License Version 2.0. See the
[LICENSE file ](LICENSE ) for more details.