WebAssembly (Wasm) Working Group Charter
Background
WebAssembly, commonly known as Wasm, refers to a compact binary instruction format utilized by a stack-based virtual machine. Its primary purpose is to serve as a versatile compilation target for programming languages, enabling seamless deployment of applications for both client-side and server-side environments.
In the context of cloud native, and with the presence of a Wasm runtime, the portability and versatility of Wasm allow users to run workloads in a diverse set of environments in both a centralized location and at the edge, including but not limited to VMs running a single docker daemon, Kubernetes cluster, and any other compatible workload orchestrator.
Mission Statement
The Wasm working group focuses on topics of running Wasm workloads across the edge, Kubernetes, and other cloud-native projects. The primary mission is to enable Wasm to be a first-class alternative to running such workloads. The secondary mission is to ensure Wasm is integrated and evolved across all cloud-native projects. We do so by promoting the adoption and usage of WebAssembly by providing resources, best practices, and tools that enable end users to utilize its unique benefits.
Scope
The working group is interested in all topics related to building Wasm artifacts, packaging and distribution, and developing solutions that embrace Wasm, including:
- Developing and adjusting infrastructure for Wasm deployments. The cloud-native modifications to meet Wasm conditions.
- Development and configuration of wasm-specific workloads. How do we start working with Wasm? How do we write, deploy, test and debug our workloads to Wasm environments? How do we empower Wasm to those specific ML/AI workloads with a wide variety of AI HW accelerators?
- Cloud-native DevOps practices for Wasm environments. How do we operate our workloads in Wasm deployment scenarios? Typical DevOps and Observability topics need to be adjusted to Wasm environments.
- Interoperability with other deployment types. Wasm workloads should be able to run in a pod alongside containers seamlessly.
- Security - Understanding, documenting, and educating folks on the security considerations of their WASM and WASI workloads and how to integrate WASM runtimes into their projects safely.
- Wasm artifacts - guide and document container registry storage structures to provide a basis for compatibility for container runtimes.
- Being the voice for cloud native users in other open source Wasm communities like the W3C and ByteCode Alliance. Many of the WG participants are members of both communities and collaborate regularly to ensure that cloud native use cases are supported in the Wasm space.
Deliverables
The working group will build collaboration, knowledge, and projects in the Wasm space, including:
- Publications, presentations, and whitepapers on interesting topics - the group will stay ahead of the current technology trends and provide material on the latest innovative topics in the space.
- Example architectures and demos - provides well-documented use cases using existing projects and demos that can be used as starting points for future projects.
- Standards, tests, and certifications - the working group will investigate if it is possible to certify solutions in well-defined domains against known criteria.
- WebAssembly ecosystem proposals - provide updates on the different open proposals and how they benefit the ecosystem. Collaborate and align with the community on the current and new proposals.
- Metrics - provides guidelines for project planning in terms of resource usage.
- Ecosystem updates - provides updates on the landscape of cloud-native projects on the Wasm at conferences, in publications, and to the Runtime TAG.
- Vertical Use cases - provide documentation or code implementation of cloud-native wasm use cases in certain vertical scenarios (network, database, AI, embedding a Wasm runtime, etc.)
Some notable completed and ongoing work is listed below:
- Collaboration with members of the ByteCode Alliance on formulating and implementing the wasi-cloud interfaces (completed and ongoing)
- Presentations from the various Wasm projects listed below, recorded in our meetings on YouTube. (completed and ongoing)
- Created a standard OCI artifact representation for Wasm and initial implementations in collaboration with the Wasm package tooling efforts in the ByteCode Alliance. This includes an implementation of the spec for Rust involving CNCF and ByteCode Alliance maintainers. (completed and ongoing)
Projects
Current CNCF Wasm-centric projects
The following is a list of well-known active CNCF projects built by or integrates with Wasm:
Runtime related
Other CNCF scopes
- Open Policy Agent - can compile policies to wasm files
- Envoy/ Istio (Wasm filter)
- KubeWarden - Kubernetes policy engine; policies compiled to WebAssembly
- Knative
- KubeEdge
- OpenFunction
- SuperEdge
Note that even though this group is under TAG-Runtime, there may be other areas to interface as indicated above.
Open Source (non-CNCF) Wasm Projects
A list of notable, popular, and/or influential open-source Wasm projects that are in the cloud native space but not necessarily officially part of the CNCF (Runtime and non-runtime related):
Operations
This WORKING GROUP follows the standard operating guidelines provided by the TOC unless otherwise stated here.
TAG Liaison
TOC Liaison
WG Chairs
WG Technical Leaders
Communication
- Community Meeting (Pacific Time): Fortnightly, Tuesdays at 5:00 pm CEST - Calendar
- Meeting Notes and Agenda: Click here
- CNCF Slack: #wg-wasm
- Mailing list: https://lists.cncf.io/g/cncf-tag-runtime
Charter Reviewed and Contributed by
- Angel M Miguel
- Danielle Lancashire
- David Justice
- Heba Elayoty
- Ismo Puustinen
- Jiaxiao (Joe) Zhou
- Michael Yuan
- Mikkel Mork
- Ralph Squillace
- Ravikanth Chaganti
- Ricardo Aravena
- Toru Komatsu
- Tiejun Chen
- Shivay Lamba
- Sven Pfennig
- Taylor Thomas
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.