Skip to content

Latest commit

 

History

History
113 lines (68 loc) · 7.9 KB

README.md

File metadata and controls

113 lines (68 loc) · 7.9 KB

Stars Homepage and Documentation CNCF sandbox project Powered by WebAssembly OpenSSF Best Practices OpenSSF Scorecard Artifact Hub CLOMonitor FOSSA Status twitter youtube subscribers youtube views

wasmCloud logo

wasmCloud is an open source Cloud Native Computing Foundation (CNCF) project that enables teams to build, manage, and scale polyglot Wasm apps across any cloud, K8s, or edge.

wasmCloud offers faster development cycles with reusable, polyglot components and centrally maintainable apps, allowing platform teams to manage thousands of diverse applications. It integrates seamlessly with existing stacks like Kubernetes and cloud providers, while providing portability across different operating systems and architectures without new builds. With custom capabilities, scale-to-zero, fault-tolerant features, and deployment across clouds, wasmCloud enables secure, reliable, and scalable applications without vendor lock-in.

Getting Started

Installation

Install the wasmCloud Shell (wash) using the installation guide.

Walkthrough

If you're new to the wasmCloud ecosystem, a great place to start is the getting started walkthrough.

Quickstart

The following commands launch wasmCloud in a local development environment and deploy a simple "hello world" WebAssembly component, written in Rust, Go, TypeScript, or Python.

wash up -d
wash new component helloworld
wash build -p ./helloworld
wash app deploy ./helloworld/wadm.yaml
curl localhost:8080

Features

  1. Declarative WebAssembly Orchestration
  2. Seamless Distributed Networking
  3. Vendorless Application Components
  4. Completely OTEL Observable
  5. Defense-In-Depth Security By Default

Examples

👟 Runnable examples

Want to get something running quickly? Check out the examples directory of this repository. Examples are organized by programming language so you can easily find samples in your language of choice.

🗺️ Roadmap and Vision

wasmCloud is a community-led project and plans quarterly roadmaps in community meetings. Please check out the latest roadmap for more information, and the wasmCloud Roadmap project to see the status of new features, improvements, bug fixes, and documentation.

Releases

The latest release and changelog can be found on the releases page.

🧑‍💻 Contributing

Want to get involved? For more information on how to contribute and our contributor guidelines, check out the contributing readme.


🌇 Community Resources

Community Meetings

We host weekly community meetings at 1pm EST on Wednesdays. These community meetings are livestreamed to our Twitter account and to YouTube. You can find the agenda and notes for each meeting in the community secton of our webste. If you're interested in joining in on the call to demo or take part in the discussion, we have a Zoom link on our community calendar.

Slack

We host our own community slack for all community members to join and talk about WebAssembly, wasmCloud, or just general cloud native technology. For those of you who are already on the CNCF Slack, we also have our own channel at #wasmcloud.


📚 Reference Documentation

wasmCloud uses some terminology you might not be familiar with. Check out the platform overview section of our docs for a deeper dive.


RPC Framework (wRPC)

wasmCloud uses wRPC, Component-native transport-agnostic RPC protocol and framework based on WebAssembly Interface Types (WIT) to enable seamless communication among the host runtime, components, and providers. wRPC is a Bytecode Alliance hosted project.


Wasm-native Orchestration & Declarative Deployments

The wasmCloud Application Deployment Manager wadm is a Wasm-native orchestrator for managing and scaling declarative wasmCloud applications. Applications are defined using the Open Application Model format.


Language Support & SDKs

wasmCloud is compatible with any language that supports the WebAssembly Component Model. We provide first-party examples in Rust, Go, Python, and TypeScript. If your language isn't listed yet, let us know with the language support form.

Capability Provider SDK

wasmCloud provides the following SDKs for creating capability providers; native executable host plugins for extending wasmCloud with custom implementations or custom capabilities:

  1. Rust provider-sdk, with a custom template provider built for getting started quickly
  2. Golang provider-sdk-go, with a custom template provider built for getting started quickly

We are a Cloud Native Computing Foundation sandbox project.