C++ on the Web (Emscripten)
Compile C and C++ to WebAssembly for the modern web with Emscripten. Port existing native libraries, expose clean JS bindings, manage the heap, and ship high-performance C++ components that run in the browser. Sourced from Google Chrome's modern web guidance.
This skill covers compiling C/C++ to WebAssembly using Emscripten: setting up the toolchain, porting existing codebases, generating JavaScript bindings with Embind, handling memory and file system shims, optimizing build flags, and integrating compiled modules into web apps. Based on Google Chrome's official modern-web-guidance material.
When to use
Use when porting C/C++ code to the browser, building libraries with Emscripten, generating JS bindings for native code, debugging WASM heap and memory issues, or setting up high-performance C++ components for the web.
Examples
Port a C++ library to WASM
Build an existing library with Emscripten
Set up an Emscripten build for this C++ library and expose its main API to JavaScript with Embind
Manage the WASM heap
Pass typed arrays into compiled C++
Show me how to pass a large Float32Array from JS into my Emscripten module without copying and read the result back safely