wasmCloud / capability-providers

ARCHIVED: wasmCloud pre-1.0 capability providers. See up-to-date capability providers in the main repository, https://github.com/wasmcloud/wasmcloud
https://github.com/wasmcloud/wasmcloud
78 stars 34 forks source link
capability-provider plugins webassembly

[!IMPORTANT] The providers in this repository are based off interfaces defined in Smithy and are used for RPC between actors over the pre-1.0 ABI. For new providers and components, interfaces are defined using WIT, and codegen is accomplished via the wit-bindgen-wrpc crate.

This repository is archived as the capability providers here are only usable in pre-1.0 versions of wasmCloud. See the wasmCloud/wasmCloud repository for the up-to-date versions of these capability providers.

Capability Providers

This repository contains capability providers for wasmCloud. The providers in the root level of this repository are only compatible with wasmCloud versions less than 1.0.0.

Finding the Latest Provider

You can query this list via script to ensure that you are pulling the most up-to-date wasmCloud provider:

curl https://wasmcloud-ocireferences.cosmonic.app/httpserver
{"schemaVersion":1,"label":"","message":"wasmcloud.azurecr.io/httpserver:0.19.1","color":"253746","namedLogo":"wasmcloud"}

If you want to return only the latest reference:

curl -s https://wasmcloud-ocireferences.cosmonic.app/httpserver | jq -r '.message'

First-Party Capability Providers

The following is a list of first-party supported capability providers developed by the wasmCloud team.

Provider Contract OCI Reference & Description
blobstore-fs wasmcloud:blobstore blobstore fs oci reference
Blobstore implementation where blobs are local files and containers are folders
blobstore-s3 wasmcloud:blobstore blobstore s3 oci reference
Blobstore implementation with AWS S3
httpserver wasmcloud:httpserver httpserver oci reference
HTTP web server built with Rust and warp/hyper
httpclient wasmcloud:httpclient httpclient oci reference
HTTP client built in Rust
redis wasmcloud:keyvalue kvredis oci reference
Redis-backed key-value implementation
vault wasmcloud:keyvalue kv-vault oci reference
Vault-backed key-value implementation for secrets
nats wasmcloud:messaging nats oci reference
NATS-based message broker
lattice-controller wasmcloud:latticecontroller lattice-controller oci reference
Lattice Controller interface
postgres wasmcloud:sqldb sqldb-postgres oci reference
Postgres-based SQL database capability provider

Built-in Capability Providers

The following capability providers are included automatically in every host runtime:

Provider Contract Description
N/A wasmcloud:builtin:numbergen Number generator, including random numbers and GUID strings
N/A wasmcloud:builtin:logging Basic level-categorized text logging capability

While neither of these providers requires a link definition, to use either of them your actors must be signed with their contract IDs.

Community Capability Providers

The following is a list of community supported capability providers developed by members of the wasmCloud community. Please see the CONTRIBUTING guide for information on how to submit your capability provider.

Provider Contract Description
mlinference wasmcloud:mlinference This repository provides a wasmCloud capability provider and actors to perform inference using machine learning models for ONNX and Tensorflow. Additional Documentation

Additional Examples

Additional capability provider examples and sample code can be found in the wasmCloud examples repository.