Python playground
Real CPython 3.14 in your browser, for the arithmetic of networks: subnets, masks, EUI-64, DNS headers in struct, HMAC, latency statistics, transfer times. A 13.5 MB engine downloads once, when you say so; nothing you type leaves the page.
Operations & FieldcraftWebAssemblyPyodide 314.0.7 (Python 3.14.2) · 13.5 MB on first useA WebAssembly tool
- What runs: Pyodide 314.0.7, which is CPython 3.14.2 compiled to WebAssembly by the Pyodide project, under the MPL-2.0 licence. It is a real interpreter, not an imitation of one.
- Where it comes from: the same origin as this page, pinned by version and by SHA-256 digest at build time. No third-party server is contacted at run time.
- What the first use costs: about 13.5 MB, downloaded only when you press the button that names the size. Your browser caches it; the second visit costs nothing.
- What leaves the page: nothing. The program and its input stay in a Web Worker on your device. The interpreter has no network and no processes; the page policy would refuse them anyway.
- What the site's own checks cover: the harness around the engine, the examples (re-run through the real engine at every build), the preflight and the limits. The interpreter's own behaviour is its project's.
Python 3.14 standard library only; no packages in this version. Up to 20000 characters. The value of the last expression is shown as the result, as in a REPL.
Examples:
References
- Pyodide documentation: Using Pyodide in a web worker
- Pyodide documentation: Redirecting standard streams
- pyodide 314.0.7 on the npm registry (package.json, pyodide-lock.json, pyodide.d.ts)
- pyodide/pyodide on GitHub
- Python 3.14 documentation: sys.stdlib_module_names
- Python 3.14 documentation: ipaddress
- Python 3.14 documentation: struct
- Python 3.14 documentation: hmac and hashlib
- Python 3.14 documentation: statistics
- ping(8), iputils manual page on man7.org: "Population standard deviation (mdev)"
- iputils ping/ping_output.c, ping_print_statistics (master branch)
- Python 3.14 documentation: zoneinfo (data sources)
- RFC 1035, Domain names: implementation and specification, section 4.1.1 (header section format)
- RFC 4291, IP Version 6 Addressing Architecture, Appendix A (modified EUI-64 interface identifiers)
- RFC 5424, The Syslog Protocol, section 6.2.1 (PRI = facility times 8 plus severity)
- RFC 2328, OSPF Version 2, section 16.1 (calculating the shortest-path tree for an area) and 16.1.1 (the next hop calculation)
- E. W. Dijkstra, A Note on Two Problems in Connexion with Graphs, Numerische Mathematik 1, pages 269 to 271, 1959 (scan in the CWI repository)
- MDN: Worker() constructor, the type option
- MDN: Content-Security-Policy script-src, the wasm-unsafe-eval source