If you want your application to be performant, you'd likely create a native desktop application instead of a browser based web app. That's where WebAssembly steps in. WebAssembly aims to bring resource intensive desktop applications to the browser with similar performance, with minimal difficulties. WebAssembly only requires the source code (of any language) be compiled into WASM's assembly-like language.
WebAssembly launched March 2017 and has largely replaced Asm.js, and as of this writing, over 94% of all web browsers support it. Some traditionally desktop only apps have already been brought to the browser with WebAssembly, like the game engine Unity, AI and ML library TensorFlow.js, AutoCAD's suite of software, and you can find more here. However, it still seems to be a rarity at this point, largely due to lack of exposure. Popular adblocking software uBlock Origin was rewritten with WebAssembly to be even more performant, see the below screenshot for a benchmark comparing JS and WASM implementations.
There are over 40 supported languages for WASM, while the initial focus was on C/C++ and Rust. Using Emscripten as the compiler, code can be easily compiled to WebAssembly
WebAssembly will allow for complex apps to be brought to the web, increasing accessibility and reach. WASM does not care about the user's OS or require additional plugins to run. WebAssembly has the joint support of W3C, Mozilla, Microsoft, Google, and Apple, so it's not going away anytime soon, and should only see more adoption. WebAssembly will allow more developers write highly performant web apps and make browsing the web a richer experience.