wasm-libxml2
A quick experiment to build and run libxml2 as a WebAssembly module. (by matiasinsaurralde)
webassembly.sh
Open-source and installable PWA terminal powered by WebAssembly, WAPM, and Wasmer-JS 🖥 (by wasmerio)
wasm-libxml2 | webassembly.sh | |
---|---|---|
1 | 5 | |
10 | 276 | |
- | 1.1% | |
0.0 | 0.0 | |
5 months ago | 12 months ago | |
C | JavaScript | |
- | MIT License |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
wasm-libxml2
Posts with mentions or reviews of wasm-libxml2.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2021-11-28.
-
CPython's main branch running in the browser with WebAssembly
Very cool, I did some experiments with libxml on a WASI environment a few years ago (https://github.com/matiasinsaurralde/wasm-libxml2).
webassembly.sh
Posts with mentions or reviews of webassembly.sh.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-02-05.
- My web-based desktop environment that was first announced here reaches 500,000 alpha users!
- WebAssembly.sh
-
How I got Ruby snippets to run browser side in less than a day
Runno installs its packages using WAPM, it's based off a fork of WebAssembly.sh and so adding support for a new language already on WAPM is quite simple. If you're interested here's the PR. The important change is:
-
CPython's main branch running in the browser with WebAssembly
In WebAssembly.sh (https://github.com/wasmerio/webassembly.sh) they run WASM binaries in a Web Worker and then use `SharedArrayBuffer` to block the WebWorker while the main thread does some work (e.g. collect input). You could use a similar solution.
When building Runno (https://runno.dev) I forked off that project and did a bunch of other things on top to get blocking to work in Safari and non-cross-origin-isolated contexts.
Ultimately I think it's JavaScript's (or whichever host language) responsibility to block when the binary calls out (if that is the expected semantics).
What are some alternatives?
When comparing wasm-libxml2 and webassembly.sh you can also consider the following projects:
emscripten - Emscripten: An LLVM-to-WebAssembly Compiler
lunatic - Lunatic is an Erlang-inspired runtime for WebAssembly
fengari - 🌙 φεγγάρι - The Lua VM written in JS ES6 for Node and the browser
pypyjs - PyPy compiled to JavaScript
pyodide - Pyodide is a Python distribution for the browser and Node.js based on WebAssembly
absurd-sql - sqlite3 in ur indexeddb (hopefully a better backend soon)