The Common WebAssembly API is a minimal specification of the standard API for non-Web WebAssembly usermode environments.
A few new types (which all lower to primitive WASM types) are introduced in types.md.
Error handling in CWA is done by error codes, which are defined in errors.md.
The CWA API is organized as namespaces, which each corresponds to a specific set of API functions.
CWA API functions should be accessible via the external module named cwa.
Every namespace should contain only lower-case ASCII characters in its name, and have its definitions in ns/{namespace}.md.
Every function should contain only lower-case ASCII characters, digits(0-9), and _ in its name, and the first character cannot be a digit.
Functions from namespaces are visible to WebAssembly modules with the name {namespace}_{function}.
"Everything is a URL".
Defined in urls-and-schemes.md.
If you are not sure, open an issue to discuss your idea first.
After you've finished writing the definitions & explanations of your new namespaces/functions, open a pull request and we would be happy to review :-)