Pyodide is a Python distribution for the browser and Node.js based on WebAssembly
Go to file
Roman Yurchak 75bfc5ea9e Minor doc improvements and fixes of .bumpversion.cfg 2020-05-20 21:11:31 +02:00
.circleci CI Add deployment setup for pyodide-cdn2.iodide.io (#666) 2020-05-19 18:15:21 +02:00
.netlify Automated deployment to Netlify (#451) 2019-05-31 14:39:52 -04:00
CLAPACK Ensure arith.h in libf2c gets built by touching it 2019-10-21 12:27:18 -04:00
benchmark MAINT Refactor benchmark script (#472) 2019-07-01 08:38:18 -04:00
bin Explicitly use python3 for pyodide_build 2019-01-09 20:56:46 +05:30
cpython ENH Upgrade cpython to 3.7.4 (#625) 2020-03-25 12:31:12 +01:00
docs Minor doc improvements and fixes of .bumpversion.cfg 2020-05-20 21:11:31 +02:00
emsdk Update to use sdk-fastcomp-tag-<version> for emscripten (#589) 2019-12-31 12:09:39 -05:00
jedi Add support for completions based on jedi (#504) 2019-08-14 10:16:12 -04:00
lz4 Use LZ4 filesystem compression, using the canonical C implementation 2018-09-19 16:44:54 -04:00
packages MAINT Remove pytest.ini (#664) 2020-05-18 21:22:48 +02:00
parso Add support for completions based on jedi (#504) 2019-08-14 10:16:12 -04:00
pyodide_build Add package version option to mkpkg command (#661) 2020-05-19 23:38:41 +02:00
six Add documentation to new build tools. 2018-06-22 10:22:00 -04:00
src Fall back to WebAssembly.compile on mime type error (#628) 2020-03-30 19:28:34 +02:00
test Merge pull request #652 from rth/arbitrary-wheel-location 2020-05-12 14:54:05 +02:00
tools Document and check for a few more things when building pyodide (#593) 2020-01-02 17:42:43 -05:00
.bumpversion.cfg Minor doc improvements and fixes of .bumpversion.cfg 2020-05-20 21:11:31 +02:00
.clang-format Remove keys from .clang-format 2018-11-13 09:46:24 -05:00
.editorconfig Fix #71: Upgrade to Python 3.7 2018-09-06 10:56:33 -04:00
.gitignore Add dependency check for the builds. (#568) 2019-11-19 16:51:45 -05:00
.readthedocs.yml Adds Sphinx documentation build (#474) 2019-06-22 18:22:38 -04:00
CHANGELOG.md DOC Improve README and documentation (#665) 2020-05-19 18:14:56 +02:00
CODE-OF-CONDUCT.md Update changelog, minor doc fixes and CDN URL updates (#668) 2020-05-20 18:58:43 +02:00
Dockerfile CLAPACK setup 2018-10-31 15:12:43 +01:00
LICENSE Initial commit 2018-02-23 14:21:29 -05:00
Makefile Update changelog, minor doc fixes and CDN URL updates (#668) 2020-05-20 18:58:43 +02:00
Makefile.envs ENH Upgrade cpython to 3.7.4 (#625) 2020-03-25 12:31:12 +01:00
README.md Update changelog, minor doc fixes and CDN URL updates (#668) 2020-05-20 18:58:43 +02:00
conftest.py MAINT Remove pytest.ini (#664) 2020-05-18 21:22:48 +02:00
remove_modules.txt Remove distutils windows installers in stdlib (#647) 2020-05-09 14:28:41 +02:00
run_docker Allow configuring run_docker ports using env vars 2019-03-21 07:49:50 -07:00
setup.cfg MAINT Remove pytest.ini (#664) 2020-05-18 21:22:48 +02:00

README.md

Pyodide

Build Status Documentation Status

The Python scientific stack, compiled to WebAssembly.

What is Pyodide?

Pyodide brings the Python runtime to the browser via WebAssembly, along with the Python scientific stack including NumPy, Pandas, Matplotlib, parts of SciPy, and NetworkX. The packages directory lists over 35 packages which are currently available.

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

While closely related to the iodide project, 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)

Try the iodide demo notebook or fire up a Python REPL directly in your browser.

For further information, look through the documentation.

Getting Started

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

  • Use hosted distribution of pyodide: see using pyodide from Javascript documentation.
  • Download a pre-built version from this repository's releases page and serve its contents 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.

Contributing

Please view the contributing guide for tips on filing issues, making changes, and submitting pull requests.

License

Pyodide uses the Mozilla Public License Version 2.0. See the LICENSE file for more details.