...

/

Minimizing the WebAssembly Modules

Minimizing the WebAssembly Modules

Learn how to minimize the size of WebAssembly modules using optimization levels with wasm-opt.

wasm-bindgen is a complete suite that generates the binding JavaScript file (along with polyfills) for the WebAssembly module. In previous chapters, we saw how wasm-bindgen provides libraries and makes it easy to pass complex objects between JavaScript and WebAssembly. But in the WebAssembly world, it’s important to optimize the generated binary for size and performance.

Getting started with a project

Let’s see how we can further optimize the WebAssembly modules:

  1. Create a WebAssembly application with all the necessary toolchains:

Press + to interact
npm init rust-webpack wasm-rust

This previous command creates a new Rust and JavaScript-based application with webpack as the bundler.

  1. Go into the generated wasm-rust directory:

Press + to interact
cd wasm-rust

The Rust source files are present in the src directory, and the JavaScript files are available in the js directory. We have webpack configured for running the application.

  1. Remove all the code from src/lib.rs and replace it with the ...