Emscripten - https://emscripten.org/docs/getting_started/downloads.html
sh ./build.sh
It use web workers and pthread at the same time. This way, the browser main thread is not blocked.
Inspired by https://gist.github.com/xaliphostes/6869989fadfb055ea40c2987b1150549