d58f6b1f6e | ||
---|---|---|
.circleci | ||
benchmark | ||
cpython | ||
emsdk | ||
packages | ||
six | ||
src | ||
test | ||
tools | ||
.clang-format | ||
.editorconfig | ||
.gitignore | ||
CHANGELOG.md | ||
CODE-OF-CONDUCT.md | ||
CONTRIBUTING.md | ||
LICENSE | ||
Makefile | ||
Makefile.envs | ||
README.md | ||
remove_modules.txt |
README.md
Pyodide
The Python scientific stack, compiled to WebAssembly.
It provides transparent conversion of objects between Javascript and Python and a sharing of global namespaces. When inside a browser, this means Python has full access to the Web APIs.
See the demo
Building
These instructions were tested on Linux. OSX should be substantively the same.
Make sure the prerequisites for emsdk are installed.
Additional build prerequisites are:
Type make
.
(The build downloads and builds a local, patched version of emsdk, then downloads and builds Python and third-party packages).
Testing
-
Install the following dependencies into the default Python installation:
pip install pytest selenium
-
Install geckodriver somewhere on your
PATH
. -
make test
Benchmarking
-
Install the same dependencies as for testing.
-
make benchmark
Linting
-
Python is linted with
flake8
. C and Javascript are linted withclang-format
. -
make lint