WebAssembly
Full WebAssembly course — 50 topics from the basics to advanced use.
Lessons
- Bulk Memory, Multi-Value and Reference Types
- SIMD
- Threads, Atomics and Shared Memory
- Exception Handling
- Tail Calls, Typed Function References and Stack Switching
- WebAssembly GC
- Memory64, Multiple Memories and Other Proposals
- Async Wasm
- WASI
- Standalone Runtimes
- Embedding Wasm in Host Applications
- The Component Model and WIT
- Building and Composing Components
- Introduction to WebAssembly
- Setting Up the Toolchain
- Core Concepts
- The WebAssembly Text Format (WAT)
- Value Types, Numeric Instructions and Locals
- Control Flow
- Functions, Imports and Exports
- Linear Memory
- Tables, Globals and Indirect Calls
- Graphics, Games and Multimedia
- Web Frameworks and Full-Stack Wasm UIs
- Server-Side, Edge and Serverless Wasm
- Plugin Systems and Extensibility
- Wasm for Data, AI and Scientific Computing
- Containers, Kubernetes and Cloud-Native Wasm
- Performance Optimization
- Code Size Optimization
- Debugging and Profiling
- Testing WebAssembly
- Security
- Packaging, Distribution and Deployment
- How Engines Execute Wasm
- Standards, Proposals Process and the Future
- Best Practices and Architecture Patterns
- Appendices: Projects, Interview Questions, Cheat Sheet & Resources
- The JavaScript WebAssembly API
- Passing Data Between JavaScript and Wasm
- The Binary Format
- Validation, Traps and Execution Semantics
- Wasm in Node.js, Deno and Bun
- C and C++ with Emscripten
- C and C++ without Emscripten
- Rust and WebAssembly
- AssemblyScript
- Go and TinyGo
- Other Languages
- Course Overview