Pyodide is a Python distribution for the browser and Node.js based on WebAssembly
Go to file
Michael Droettboom b537908b2b Simplify Makefiles. Support parallel compilation. 2018-05-16 13:06:44 -04:00
benchmark Fix benchmark plot. Don't include Numpy import in benchmark timing. 2018-04-11 08:51:41 -04:00
cpython Simplify Makefiles. Support parallel compilation. 2018-05-16 13:06:44 -04:00
dateutil Simplify Makefiles. Support parallel compilation. 2018-05-16 13:06:44 -04:00
emsdk Don't remove .emscripten 2018-04-19 17:35:56 -04:00
numpy Simplify Makefiles. Support parallel compilation. 2018-05-16 13:06:44 -04:00
pandas Simplify Makefiles. Support parallel compilation. 2018-05-16 13:06:44 -04:00
pytz Simplify Makefiles. Support parallel compilation. 2018-05-16 13:06:44 -04:00
six Simplify Makefiles. Support parallel compilation. 2018-05-16 13:06:44 -04:00
src Fix promise in loadPackage so it doesn't fire early. 2018-05-10 15:29:09 -04:00
test Get full output on test failure 2018-05-11 10:52:49 -04:00
.gitignore Lots of pandas fixes: 2018-04-24 19:29:54 -04:00
.travis.yml Install lessc on Travis 2018-04-30 11:53:07 -04:00
LICENSE Initial commit 2018-02-23 14:21:29 -05:00
Makefile Simplify Makefiles. Support parallel compilation. 2018-05-16 13:06:44 -04:00
Makefile.envs Simplify Makefiles. Support parallel compilation. 2018-05-16 13:06:44 -04:00
README.md Add Jupyter's stylesheet for inline html content 2018-04-26 11:04:28 -04:00
remove_modules.txt Lots of pandas fixes: 2018-04-24 19:29:54 -04:00

README.md

Pyodide

Build Status

This provides an integration layer when running an empscripten-compiled CPython inside a web browser. 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.

Building

These instructions were tested on Linux. OSX should be substantively the same.

Make sure the prerequisites for emsdk are installed.

Install lessc to compile less to css.

Type make.

(The build downloads and builds a local, patched version of emsdk, then downloads and builds Python and Numpy, and finally builds the pyodide-specific code.)

Testing

  1. Install the following dependencies into the default Python installation:

    pip install pytest selenium

  2. Install geckodriver somewhere on your PATH.

  3. make test

Benchmarking

  1. Install the same dependencies as for testing.

  2. make benchmark