this /static/media/twitter/SBCNDY.png

Python is ubiquitous, popular and runs almost everywhere – even on Mars. But there is one place that Python has not yet conquered: the browser. Python 3.11 may finally lay the foundation to make an old dream come true and have Python in the web browser.

In my talk I will explain how to cross-compile CPython 3.11 to Web Assembly and demonstrate how to run CPython in JavaScript engines. The talk will cover

  • Why are some core developers and contributors working on Web Assembly port?
  • What is WASM and how do builds for browser, node, and WASI differ? What are the features and limitations of different WASM targets?
  • A short introduction to Python’s build system and how cross compiling works.
  • What problems did we run into and how did we have to modify CPython’s sources for WASM?
  • What is missing to make web browser support stable and usable in production?
  • A comparison to existing solutions like Pyodide.
  • What does WASM support mean for the community and PyPI packages?

Christian Heimes

Affiliation: Red Hat

Christian is an open source developer and Python core developer from Hamburg/Germany. He is well known for his work in the Python Security Response Team and as maintainer of CPython's ssl module.

visit the speaker at: Github