Top 23 WebAssembly Open-Source Projects
TesseractJS - This is a pure JS port of Tesseract OCR which is a popular Optical Character Recognition engine.
A TypeScript-like language for WebAssembly.Project mention: Creation Story | reddit.com/r/typescript | 2021-12-18
OP you should look into AssemblyScript https://github.com/AssemblyScript/assemblyscript
Less time debugging, more time building. Scout APM allows you to find and fix performance issues with no hassle. Now with error monitoring and external services monitoring, Scout is a developer's best friend when it comes to application development.
🚀 The leading WebAssembly Runtime supporting WASI and EmscriptenProject mention: WASM instead of C Dependencies? | dev.to | 2022-01-14
Wasmer Cranelift runtime: 275ms
Go compiler for small places. Microcontrollers, WebAssembly (WASM/WASI), and command-line tools. Based on LLVM.Project mention: What type of software do you write at your workplace? | reddit.com/r/golang | 2022-01-17
But then I met TinyGo.
I know of https://github.com/therecipe/qt, but I've no experience using it, so not sure how well it works. But normally if you feel handy with Go, I guess it should be easier than switching your development stack to C++.
Pure Go implementation of the WebRTC APIProject mention: Show HN: WebRTC bandwidth estimation from static videos | news.ycombinator.com | 2022-01-23
A simple and easy-to-use library to enjoy videogames programmingProject mention: MSAA 4X for render textures? | reddit.com/r/raylib | 2022-01-13
Github issue about MSAA: https://github.com/raysan5/raylib/issues/65 Something like this is how you do it with raw gl: https://learnopengl.com/Advanced-OpenGL/Anti-Aliasing how you might do it purely with raylib I am unsure. But in that issue is this linked fragment shader code to do fxaa https://pastebin.com/ZE6w1LKi
Deliver Cleaner and Safer Code - Right in Your IDE of Choice!. SonarLint is a free and open source IDE extension that identifies and catches bugs and vulnerabilities as you code, directly in the IDE. Install from your favorite IDE marketplace today.
mal - Make a LispProject mention: Llisp: Lisp in Lisp | news.ycombinator.com | 2022-01-23
Also see Make a Lisp - a build a lisp project that has a specific section on tail recursion . When I went through the MAL process, TCO was actually one of the more straight forward sections (compared with say macros). The basic idea is quite simple - take your eval function and wrap it's body in a loop. For several of the special forms, instead of recursing, rebind eval's arguments and go back round the loop. Forms where something is done after the call to eval still have to recurse, but they are actually in the minority.
Pyodide is a Python distribution for the browser and Node.js based on WebAssemblyProject mention: Show HN: Bulk convert images online without sending to server | news.ycombinator.com | 2022-01-23
> Any pure Python package with a wheel available on PyPi is supported. Many packages with C extensions have also been ported for use with Pyodide. These include many general-purpose packages such as regex, PyYAML, lxml and scientific Python packages including NumPy, pandas, SciPy, Matplotlib, and scikit-learn.
Standalone JIT-style runtime for WebAssembly, using CraneliftProject mention: WebAssembly: The New Kubernetes? | news.ycombinator.com | 2022-01-21
> But, in WebAssembly you get a few more things. One is fast start.
This is one of the key things I think is differentiating versus the container world. The idea of per-request instantiation is possibly within reach. This is a possible return to a very old, very simple architectural pattern, of cgi-bin! Running a process per request. Which we left because creating processes was expensive. Our new architectures- discussed in this write up- revolve around long running applications, which are compelled upon us for performance reasons. But WebAssembly seems well suited to very fast instantiation of new contexts. It re-opens the possibility that we can have (return to) smaller more discrete chunks of work, safer little units of execution running. We could go back to a Apache HTTPD style prefork world, the very old!
This is part of the gradient we've been walking down, it feels like. VMs -> containers -> lighter weight containers. Returning to finer grained processes.
For anyone interested in a deep dive into some of the super neat systems programming going into making WebAssembly starts/instantiation fast, there's a bunch of active work to reengineer module instantiation, using memfd . Really fun to see this getting hashed out.
> * So one answer to the question as initially posed is that no, WebAssembly is not the next Kubernetes; that next thing is waiting to be built, though I know of a few organizations that have started already.*
And as others have recommended, worth noting Krustlet, which allows running WebAssembly instances via Kubernetes. This could definitely make sense for a lot of our workloads. I think a lot of people also expect though that the cloud infrastructure itself will get rewritten or recompiled into webassembly. Where-as today we tend to wire systems together over protocols, via http or grpc, we'll be able to more directly stitch together plugably modular systems, where a generic control process to govern, i dunno pick an example, load balancers say, has a bunch of specific webassembly modules plugged in with the specific actuators / configuration for your set up. There's a real potential to fulfill much of the idea of micro-kernels here, of decomposing big applications into looser assemblages of generic code, drivers, and configuration.
😎 Curated list of awesome things regarding WebAssembly (wasm) ecosystem.Project mention: If software engineering is in demand, why is it so hard to get a software engineering job? | reddit.com/r/business | 2021-08-26
If you want play with virtualization inside browser, check this out
Resources for Blazor, a .NET web framework using C#/Razor and HTML that runs in the browser with WebAssembly.Project mention: Advancing in C#/becoming a senior dev | reddit.com/r/csharp | 2022-01-10
It is usually true that Microsoft's documentation falls behind their implementations, but it does eventually catch up. But this: https://docs.microsoft.com/en-us/aspnet/core/blazor/?view=aspnetcore-6.0 isn't all that bad. There are a lot of resources here https://github.com/AdrienTorris/awesome-blazor too.
Build Mobile, Desktop and WebAssembly apps with C# and XAML. Today. Open source and professionally supported.Project mention: The poor man's IDE | reddit.com/r/ProgrammerHumor | 2022-01-22
Or does anyone know how to develop UWP/Xamarin on Linux? (yes, UNO-Platform, have to convince boss first.)
🌀 A nonsense activity generatorProject mention: I made a tool you guys can use for producing advanced Linux memes | reddit.com/r/linuxmemes | 2021-04-20
The binaryen toolkit comes with a wasm2js tool, you could translate the wasm back to js and see how performance compares ;)
Otherwise it's a completely pointless excercise of course, unless you need to support browsers without WASM support (which don't exist anymore AFAIK).
Vim editor ported to WebAssemblyProject mention: Why do most self-taught programmers end up doing front-end web devleopment? | reddit.com/r/cscareerquestions | 2021-10-31
If you want a C back end, give https://github.com/rhysd/vim.wasm a look.
🚀 The fastest WebAssembly interpreter, and the most universal runtimeProject mention: MiniVM: A minimal cross-language runtime that beats C/luajit on some benchmarks | news.ycombinator.com | 2022-01-08
How does this compare to the techniques used in the wasm3 (name, not description)?
architecture of M3 the interpreter core of wasm3 https://github.com/wasm3/wasm3/blob/main/docs/Interpreter.md
Vugu: A modern UI library for Go+WebAssembly (experimental)
A data visualization and analytics component, especially well-suited for large and/or streaming datasets.Project mention: Open source Business intelligence platform made with Python | news.ycombinator.com | 2021-11-28
The WebAssembly Binary ToolkitProject mention: Understanding WebAssembly better by learning WebAssembly-Text | dev.to | 2021-08-15
WebAssembly is a true revolution in tech, not just in the web, but thanks to WASI and friends, it is becoming available everywhere. One of the best things WebAssembly offers is being a compilation target instead of just another programming language. This has the potential to help a lot of non-JS developers get involved with web development. WebAssembly also has its text version called... You got it, WebAssembly Text, or WAT for short! (MDN docs here). It can be compiled to the binary format using WABT.
Lucet, the Sandboxing WebAssembly Compiler.Project mention: There are a *lot* of actor framework projects on Cargo. | reddit.com/r/rust | 2021-05-01
I guess lucet could be an under-layer for this but it's not really the same, different levels of the stack. Fascinating.
🌈A set of enterprise-class UI components based on Ant Design and Blazor WebAssembly.Project mention: Best UI components for commercial enterprise project? | reddit.com/r/Blazor | 2021-11-25
AntBlazor is the best for me. You can try.
Lightweight and modular C++11 graphics middleware for games and data visualizationProject mention: Game Engine From Scratch | reddit.com/r/cpp | 2022-01-17
It's not a tutorial, but magnum is a modern C++11/14 graphic engine actively developed by a small team.
WebAssembly related posts
W2c2: Translate WebAssembly Modules to C
1 project | news.ycombinator.com | 24 Jan 2022
Show HN: Bulk convert images online without sending to server
5 projects | news.ycombinator.com | 23 Jan 2022
Rust Raytracer compiled to Webassembly to run live in browser
4 projects | reddit.com/r/rust | 22 Jan 2022
Ask HN: Should I even bother with React?
2 projects | news.ycombinator.com | 23 Jan 2022
How do you implement `+=`, `-=`, `*=` and `/=` from the C-like languages? Modifying the AST to convert them to simple assignments does not work because then functions called on the feft-hand-side are called twice instead of only once.
1 project | reddit.com/r/ProgrammingLanguages | 23 Jan 2022
What projects are you currently working on?
4 projects | reddit.com/r/cpp | 22 Jan 2022
I am confused about WASM and Blazor and what graphic primitives are supported.
1 project | reddit.com/r/dotnetcore | 22 Jan 2022
What are some of the best open-source WebAssembly projects? This list will help you:
Are you hiring? Post a new remote job listing for free.