Currently, there are three ways to have a WASI Component Model:
- Build a preview 1
wasm
module and adapt it to a component in the guest (guest-tools
) - Build a preview 1
wasm
module, load it in as a binary in the host and adapt it to a component (host-component
) - Build a preview 2 component via
cargo component
(guest-cargo
)
In the Rust ecosystem, the third option is preferred. But all three are provided here as a proof of concept.