WebAssembly System Interface (by WebAssembly)


Basic WASI repo stats
6 days ago

WASI Alternatives

Similar projects and alternatives to WASI

  • GitHub repo rust

    Empowering everyone to build reliable and efficient software.

  • GitHub repo design

    WebAssembly Design Documents

  • GitHub repo Runtime

    .NET is a cross-platform runtime for cloud, mobile, desktop, and IoT apps.

  • GitHub repo node-sqlite3

    Asynchronous, non-blocking SQLite3 bindings for Node.js

  • GitHub repo lunatic

    Lunatic is an Erlang inspired runtime for WebAssembly

  • GitHub repo stevenarella

    Multi-protocol Minecraft-compatible client written in Rust

  • GitHub repo threads

    Threads and Atomics in WebAssembly

NOTE: The number of mentions on this list indicates mentions on common posts. Hence, a higher number means a better WASI alternative or higher similarity.


Posts where WASI has been mentioned. We have used some of these posts to build our list of alternatives and similar projects - the last one was on 2021-02-05.
  • How I built a telnet chat server in 2021 with WebAssembly
    Lunatic is using an experimental socket API, but I will also add WASI-sockets once it's stable.
  • Could WebAssembly and WebGPU be the next hope of the Linux desktop ?
    reddit.com/r/linux | 2021-02-05
    Since it wasn't mentioned I'll talk about WASI, the WebAssembly System Interface standard, a.k.a. running WASM code outside of the browser. I think its impact will be huge, it will take a long time to become mainstream mostly because moving both WASM and WASI from their MVP state to a more useful one is slow, perhaps only my impression but I also feel that since Mozilla budget cuts all the things WASM have gotten slower. WASI in its initial version provides a standard POSIX like API that allows fiddling with file descriptors, i.e. you can already mess with files or have binaries that read from stdin and spit out bytes to stdout, that's already quite useful for some simple CLIs or for example you could build an Openfas like function as a service system in the cloud. WASM is also not limited to just in time compilation, there are ahead of time compilers that would allow your app to run at native speeds since your WASM+WASI app would get compiled to optimized machine code on installation. WASI won't be limited to low level system APIs thought, it will be common to see higher level stuff like hardware accelerated neural networks https://github.com/WebAssembly/WASI/issues/59 or WebGPU https://github.com/WebAssembly/WASI/issues/53 as you propose, so no need for a bloated web browser in all this. My bet? Yes WASM will have huge adoption in the future, l foresee slimmed down linux distros that will act only as a thin hardware abstraction while whole ecosystems get created on top of WASM+WASI. And it won't be only for the desktop, the biggest benefits will be in the cloud when in 10 years from now people would have forgotten completely about container technology and most applications and services will be WASM likely using WASI to talk securely to the underlying host.
  • Could Tor be compiled into WebAssembly and ran in a browser client-side?
  • Is possible to compile the std lib of Rust to WASM?
    reddit.com/r/rust | 2021-01-16
    It is unfortunate there is not a better solution for more of std on wasm. A couple years ago for some time the Rust and WebAssembly working group was making a lot of progress: https://rustwasm.github.io but their blog stopped in 2019 and progress seems to have leveled off or interest waned. Emscripten accomplished a lot, but appears to be declining in popularity for Rust; wasm32-unknown-unknown works great but is minimal and requires implementing std replacements such as by using web-sys if you want to access the web platform, maybe wasm32-wasi will be the answer, you can follow its progress here: https://github.com/WebAssembly/WASI but their intended use case from my understanding is not necessarily for the web (though, that may be what you're looking for).
  • Wasmer 1.0 Now Available
    news.ycombinator.com | 2021-01-05
    Are you talking about the browser or other environments?

    There is a proposal [1] for adding sockets to WASI.

    This blog post [2] has some more background info.

    Outside the browsers, you can always provide extra functionality yourself though by supplying host defined functions as imports. That looses the benefit of a standard API, but is fine for constrained environments.

    [1] https://github.com/WebAssembly/WASI/pull/312

    [2] https://radu-matei.com/blog/towards-sockets-networking-wasi/

  • Wasmer 1.0 released, the fastest WebAssembly VM, cross-compilation, headless, native object engine, AOT compilers and more!
    reddit.com/r/rust | 2021-01-05
    The tech is cool but the people behind this sadly have quite a history of scummy behavior ([1] [2] [3] [4] ...), so it's hard to be excited about this.
  • Do you think native machine code compiled languages like Rust should replace Bytecode compiled languages like Java, Kotlin, and C#?
    reddit.com/r/rust | 2020-12-25
    There is a standard being developed named WASI (WebAssembly System Interface) which provides a sandboxed way to write local applications using WebAssembly and implementations like Wasmer.