Welcome! This repository is designed to be a top-tier, modern resource for learning WebAssembly (WASM) in 2025. Our goal is to provide clear explanations, practical examples, and up-to-date information to help you master WASM.
For detailed documentation, please see the docs directory.
This repository is organized into the following main directories:
/docs: Contains detailed documentation, guides, and conceptual explanations./src: Will house core library code or reusable modules (currently planned)./examples: Provides practical, hands-on examples of WebAssembly in action.- FFmpeg GIF Maker: A TypeScript example demonstrating video to GIF conversion using FFmpeg.wasm. (See
examples/ffmpeg/gif_maker/ts) - C to WASM (Factorial): A simple example showing how to compile a C function (factorial) to WASM using Emscripten and call it from JavaScript. Details here.
- Rust to WASM (Add & Greet): A basic example demonstrating how to compile Rust functions to WASM using
wasm-packandwasm-bindgen, then call them from JavaScript. Details here. - Go to WASM (Concat & Add): A basic example demonstrating how to compile Go functions to WASM using standard Go tooling (
GOOS=js GOARCH=wasm) and call them from JavaScript. Details here. - C# to WASM (Greet, Add & Complex Calc): A basic example demonstrating how to compile C# methods to WASM using the .NET SDK (
browser-wasmtarget) and call them from JavaScript. Details here. - Swift to WASM (Greet & Add): A basic example demonstrating how to compile Swift functions to WASM using SwiftWasm (
cartonbuild tool) andJavaScriptKitfor interop. Details here.
- FFmpeg GIF Maker: A TypeScript example demonstrating video to GIF conversion using FFmpeg.wasm. (See
/tests: Will include tests for any code developed in/srcor/examples./build: Will be used for build artifacts and outputs./scripts: Contains utility scripts for building, testing, or managing the repository.