~/talk

Pyodide: A Python distribution for the browser

Talkat PyCon US 2022 · 2022-04-27..05-03· [web-platform, webassembly]
links:none on file
links:none on file
slides:none on file

Pyodide ports CPython 3.9 to WebAssembly so Python runs in the browser and Node.js, bundles a rich JavaScript↔Python FFI, and compiles popular binary extensions (numpy, pandas, scipy, matplotlib, cryptography). It provides micropip installs pure‑Python wheels and a build pipeline for binary wheels; the ecosystem includes ~120 packages and real demos: JupyterLite notebooks, live in‑browser ML training and inference, and a French high‑school deployment with ~100k weekly users. Constraints are concrete: no threading or sockets, subprocesses are missing, filesystem is in‑memory, and typical downloads are tens of megabytes (≈18 MB compressed / ≈30 MB uncompressed).

AI-written summary · about

  1. 0:00Intro
  2. 1:17Serverless Python apps for the web?
  3. 2:27What is WebAssembly?
  4. 4:04The emscripten build toolchain
  5. 4:18Pyodide Components
  6. 5:41Upstream CPython WASM work
  7. 7:03Related projects
  8. 8:34Pure Python packages with micropip
  9. 9:06Packages with binary extensions
  10. 11:12Supported Python packages in Pyodide
  11. 12:51Foreign function interface (JS # Python)
  12. 14:54Example: Python utils from JavaScript
  13. 16:05Example: random sample
  14. 18:27Examples: fetch API from Python
  15. 18:47Examples: Buffers
  16. 19:33Emscripten Host Environment
  17. 21:24Client-only Architecture
  18. 22:02Client-only Web Apps in Python
  19. 23:35A growing ecosystem
  20. 24:28Notebook environments
  21. 25:21Pyodide in Education
  22. 26:33Deploying machine learning models Classical workflow
  23. 27:41Deploying scikit-learn models in Pyodide Use pickle?
  24. 28:49Classifier decision boundary example
  25. 30:11Packaging Scipy and Fortran
  26. 31:31Function Pointer Cast Handling
  27. 34:00Getting http.client to work (WIP)
  28. 35:25Asyncio in the browser
  29. 36:15Download sizes for packages
  30. 37:04Make Python package sizes web friendly
  31. 38:10Roadmap
  32. 39:49Acknowledgement
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.