JavaScript
zstd-js
Zstandard compression in pure JavaScript — no WebAssembly, no native bindings.
React Native and Hermes do not give you WebAssembly, and they do not give you native modules without ejecting. If you need Zstandard there, you need it in JavaScript.
So this is the format implemented directly: FSE and Huffman decoding, the sequence decoder, and the frame parser, in plain JS that runs anywhere JavaScript does.
It is slower than a native binding. That is the trade, and on a platform where the alternative is nothing at all, it is an easy one.