Joyful Pyodide with...tests?
summary
Shows that you can run Python-in-the-browser code without opening Chrome by running tests in Node.js using Vite and Vitest, Playwright for E2E, and happy-dom for a headless DOM. Demonstrates a Vite plugin that copies Pyodide WASM into bundles, and a trick to reuse the same Pyodide interpreter between tests to avoid slow spinups. Result: unit and integration tests run in watch mode near-instant (often under a second), with failures debuggable in the IDE.
AI-written summary · about
chapters (9)
- 0:00Introduction and demo
- 3:53Why this matters
- 11:03Challenges in current workflow
- 14:14Modern tooling setup
- 21:42Joyful Python development
- 27:48Testing strategies
- 32:18Larger application demo
- 35:42Practical considerations
- 38:53Call to action
related talks
41mPyodide: A Python distribution for the browser
15mVitest Browser Mode
13mComponent Testing with Playwright for Vue
28mTesting Web Applications with Playwright
32mTesting React apps like it’s 2026
20mVitest: testing DX reimagined
27mAnatomy of a Test Runner: What Vitest Keeps Getting Right
51mAdvanced Playwright Techniques for Flawless Testing
