Skill WASM
Scaffolds e interop de Rust para WebAssembly - uma Skill de Agente para Rust 1.97.0 e implantações em navegador ou WASI.
Busque em todas as páginas da documentação
Scaffolds e interop de Rust para WebAssembly - uma Skill de Agente para Rust 1.97.0 e implantações em navegador ou WASI.
Cria crates cdylib com wasm-bindgen, wasm-pack build, código auxiliar JS e perfis de release ajustados para tamanho. Revisa exports #[wasm_bindgen] e hooks de pânico para consoles de navegador.
| Entrada | Por quê |
|---|---|
| Target | wasm32-unknown-unknown vs wasi |
| Framework JS | Bundler bruto vs pacote npm |
| API Exportada | Funções, classes, strings |
| Orçamento de tamanho | Limite de KB para entrega via CDN |
Cargo.toml com crate-type = ["cdylib"]wasm-packwee_alloc ou padrão documentadaindex.html ou layout de publicação npm pkg/twiggy ou wasm-objdumpopt-level = "s" ou "z" para WASM sensível a tamanho.Result nas exportações.console_error_panic_hook com feature-gate - apenas para desenvolvimento, quando possível.wasm-bindgen-test ou smoke test com playwright.wasm-pack build --target web --release
wasm-opt -Oz -o pkg/my_module_bg.wasm pkg/my_module_bg.wasmuse wasm_bindgen::prelude::*;
#[wasm_bindgen]
pub fn add(a: u32, b: u32) -> u32 {
a + b
}wasm-bindgen para navegadores; WASI para runtimes WASM do lado do servidor.
Geralmente não Tokio completo; use wasm-bindgen-futures para async no navegador.
Remova debug, execute wasm-opt, evite importar serde completo quando tipos JS manuais forem suficientes.
Versões da Stack: Esta página foi escrita para Rust 1.97.0 (edição 2024), Tokio 1.x, Axum 0.8, serde 1.0, sqlx 0.8, clap 4, e Polars 0.46+.
Revisado por Chris St. John·Última atualização: 16 de jul. de 2026