[package] name = "wasm-bridge" description = "Run WASM modules on desktop or on the web using wasmtime's API" version.workspace = true edition.workspace = true repository.workspace = true license.workspace = true keywords.workspace = true categories.workspace = true [dependencies] wasm-bridge-macros = { workspace = true, optional = true } async-trait = { workspace = true, optional = true } [target.'cfg(not(target_arch = "wasm32"))'.dependencies] wasmtime = { workspace = true } ref-cast = { workspace = true } [target.'cfg(target_arch = "wasm32")'.dependencies] js-sys = { workspace = true } wasm-bindgen = { workspace = true } wasm-bindgen-futures = { workspace = true } wat = { workspace = true, optional = true } js-component-bindgen = { workspace = true, optional = true } anyhow = { workspace = true } try-lock = { workspace = true } atomic_refcell = { workspace = true } [dev-dependencies] wasm-bindgen-test = { workspace = true } [features] default = ["wat", "error-logging"] wat = ["dep:wat", "wasmtime/wat"] component-model = ["wasmtime/component-model", "wasm-bridge-macros", "js-component-bindgen"] async = ["wasmtime/async", "async-trait", "wasm-bridge-macros/async"] error-logging = []