A cap (short for capability) is a native library exposed to pylon
through a WebAssembly Component Model WIT interface — not linked as a CPython
C extension. Instead of statically compiling _duckdb, _openssl,
or _sqlite into the interpreter, pylon composes with independent wasm
components (from the tegmentum ecosystem) that satisfy the same public
Python API.
The upshot: pylon's runtime binary stays small, the caps are language-agnostic (Rust,
C, another Python component can consume the same DuckDB cap), and unloading / swapping
a cap is a compose-time decision. Under the hood every hashlib.sha256() call
in this tab is talking to tegmentum:openssl-wasm across a component
boundary.
More detail (repo-local for now; docs.pylink.dev is coming):
docs/architecture.md.
License notice. The Subprocess via v86 example boots a
v86-emulated Linux kernel (GPL-2.0) and busybox userspace (GPL-2.0) in a Web Worker to
serve subprocess.spawn. pylon itself is Apache-2.0; the vendored
kernel + busybox + v86.core.wasm retain their upstream licenses. See
web/public/v86/README.md
and THIRD_PARTY_LICENSES.md.