Crate wash_lib

source ·
Expand description

A crate that implements the functionality behind the wasmCloud shell

The wash command line interface https://github.com/wasmCloud/wasmCloud/tree/main/crates/wash-cli is a great place to find examples on how to fully utilize this library.

This library contains a few feature flags, most enabled by default but optional in order to allow consumers to omit some functionality. This is especially useful when considering compiling this library to restrictive targets, e.g. wasm32-unknown-unknown or wasm32-wasi. Support for wasm targets is a goal but has not been tested yet.

Feature NameDefault EnabledDescription
starttrueContains the start module, with utilities to start wasmCloud runtimes, NATS, and wadm
parsertrueContains the parser module, with utilities to parse wasmcloud.toml files
clifalseContains the build, cli, and generate modules with additional trait derives for usage in building CLI applications
natstrueContains the app, actor, capture, config, context, drain, spier and wait modules with a dependency on async_nats

Modules§

  • Interact with and manage wadm applications over NATS, requires the nats feature
  • Common config constants and functions for loading, finding, and consuming configuration data
  • Types and methods for handling wash contexts, the configuration files for interacting with lattices
  • Remove cached wasmCloud files like OCI artifacts or downloaded binaries
  • Types and tools for basic validation of seeds and IDs used in configuration
  • A common set of types and traits for managing collections of nkeys used for wasmCloud
  • Parse wasmcloud.toml files which specify key information for building and signing WebAssembly modules and native capability provider binaries
  • Utilities for pulling and pushing artifacts to various registries
  • The start module contains functionality relating to downloading and starting NATS servers and wasmCloud hosts.