WASM

Open-source projects categorized as WASM | Edit details

WebAssembly (abbreviated WASM) is a binary instruction format for a stack-​based virtual machine. WebAssembly is an open standard that defines a portable binary-code format for executable programs, and a corresponding textual assembly language, as well as interfaces for facilitating interactions between such programs and their host environment.

Top 23 WASM Open-Source Projects

  • GitHub repo yew

    Rust / Wasm framework for building client web apps

    Project mention: Show HN: Lifeee – Conway’s Game of Life with an infinite zoomable grid | news.ycombinator.com | 2021-11-12

    Hi all! Here is the latest Rust side project I’ve been working on for the past couple of weeks: Lifeee, an implementation of John Conway’s Game of Life.

    It was the opportunity for me to continue my Rust learning journey, and I think I’m finally starting to feel a bit comfortable with the language, especially ownership :). I also wanted to discover what was possible when using Rust for frontend development, and I must say I was so impressed by Yew! I didn’t think it would be so nice to use, especially since I have quite some experience with React.

    A big difference compared to the various implementations you can find (often in Rust and Yew tutorials) is that the grid is infinite. This means that you can drag it to move in all directions, but also zoom in and out. This was probably the most challenging part of my project and involved a lot of calculus and doodles in my notebook! Also, since I used a canvas to draw the grid (and not DOM elements), the simulation is pretty fast even when a lot of cells are displayed :D

    What I learned during this project:

    - Use Yew [1] for frontend development: not very different from writing React components, with the advantages of Rust as a plus!

    - Serialize/deserialize data: the available Game of Life patterns are extracted from the official Lexicon [2]; I parsed the text version to generate a serialized version (separate library: [3]) that I then import and deserialize in the app.

    - Build the web app using GitHub actions and deploy it using Netlify: pretty straightforward using Trunk [4] as a bundler (also used for development).

    You can find the source code of the app on GitHub [5]. Please tell me what you think of it! ;)

    [1] https://yew.rs/

  • GitHub repo tfjs

    A WebGL accelerated JavaScript library for training and deploying ML models.

    Project mention: Question about TensorflowJS on NodeJS for inference | reddit.com/r/tensorflow | 2021-11-26

    If your goal is to use the model with TF.js, first you need to use tfjs-converter to convert your h5 model to a TFjs-compatible one. Like this:

  • Scout APM

    Scout APM: A developer's best friend. Try free for 14-days. Scout APM uses tracing logic that ties bottlenecks to source code so you know the exact line of code causing performance issues and can get back to building a great product faster.

  • GitHub repo assemblyscript

    A TypeScript-like language for WebAssembly.

    Project mention: What scripting language and what implementation would you use with your program written in Rust? | reddit.com/r/rust | 2021-10-03

    I haven’t tried it yet, so ymmv, but take a look at AssemblyScript. It’s like Typescript with WASM support.

  • GitHub repo filament

    Filament is a real-time physically based rendering engine for Android, iOS, Windows, Linux, macOS, and WebGL2

    Project mention: Looking for Kotlin graphics programming projects that individuals or communities are actively working on. | reddit.com/r/Kotlin | 2021-10-08

    Google Filament is a C++ engine with Kotlin bindings for Android. Very high quality code on both sides https://github.com/google/filament

  • GitHub repo v86

    x86 virtualization in your browser, recompiling x86 to wasm on the fly

    Project mention: Show HN: Run Python, Ruby, Node.js, C++, Lua in the Browser via x86 to WASM JIT | news.ycombinator.com | 2021-11-22

    This is quite impressive.

    I would love to see if we can have something similar that doesn't require JS at all, so we can execute x86 programs server-side just using Wasm translation (hi Wasmer).

    Here's another interesting project I found recently that I think fits as well on the asm2wasm translation mechanism: https://github.com/copy/v86/

  • GitHub repo wasmer

    🚀 The leading WebAssembly Runtime supporting WASI and Emscripten

    Project mention: What do you NOT like about Rust? | reddit.com/r/rust | 2021-11-21

    Have you looked into either abi_stable (a crate that handles the repr(C) stuff for you with a focus aimed at making DLLs) or Wasmer (an embeddable WebAssembly runtime that would mean mods compiled for x86 Windows would also work on PowerPC Linux and ARM macOS)?

  • GitHub repo sql.js

    A javascript library to run SQLite on the web.

    Project mention: DuckDB-WASM: Efficient Analytical SQL in the Browser | news.ycombinator.com | 2021-10-29
  • Nanos

    Run Linux Software Faster and Safer than Linux with Unikernels.

  • GitHub repo TinyGo

    Go compiler for small places. Microcontrollers, WebAssembly, and command-line tools. Based on LLVM.

    Project mention: tinygo pico serial output with println | reddit.com/r/raspberrypipico | 2021-11-23
  • GitHub repo Pion WebRTC

    Pure Go implementation of the WebRTC API

    Project mention: Scout. The WebRTC controlled robot. | reddit.com/r/robotics | 2021-11-22

    I'm building a free platform to build such projects. It consists of a web app: roboportal.io and Golang based software which should operate on the robot's side: https://github.com/roboportal/bot_box. WebRTC part is Pion (https://github.com/pion/webrtc). Also, there are a few more bots examples created with this tool: https://github.com/roboportal/bot\_design\_examples

  • GitHub repo raylib

    A simple and easy-to-use library to enjoy videogames programming

    Project mention: How to start contributing? | reddit.com/r/opensource | 2021-11-28

    Raylib is wrapped for 50 languages. You can pick one of the bindings, fork it, then make sure all the examples are translated from C to the binding you chose.

  • GitHub repo ffmpeg.wasm

    FFmpeg for browser and node, powered by WebAssembly

    Project mention: How to create a video editor that works in your browser. | dev.to | 2021-11-26
  • GitHub repo awesome-wasm

    😎 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

  • GitHub repo wasmtime

    Standalone JIT-style runtime for WebAssembly, using Cranelift

    Project mention: Features of PL/I not realized in a modern language | news.ycombinator.com | 2021-11-27

    You mean "multi-return" functions?

    https://github.com/bytecodealliance/wasmtime/issues/1057

    We have looked at these before. Modern CPUs have a RAS, and you dont want to mess with that. But there are ways to implement this, and some papers that cover the performance impact.

    We'd need a very motivated individual to add support for this to LLVM and Cranelift.

  • GitHub repo Uno Platform

    Build Mobile, Desktop and WebAssembly apps with C# and XAML. Today. Open source and professionally supported.

    Project mention: I'm learning C# so I can make cross-platform GUIs | reddit.com/r/csharp | 2021-11-25

    I’ve been working on some projects lately that involves GUI applications for a Raspberry pi, WASM, and UWP. I’ve chosen to follow the Uno-Platform as my main go to although I am still experimenting. I didn’t have the best results initially using Avolonia UI on the raspberry pi although I haven’t dove as deep into it as I had the Uno-Platform. Uno has a very large and active development community and their documentation is up to date with the newest Microsoft products. This includes the team actively working on .Net 5, .Net6, .Net Maui, and WinUI3. They provide many samples on GitHub as well as useful examples written by supporters on their “blog” section over at Uno Platform Website

  • GitHub repo go-app

    A package to build progressive web apps with Go programming language and WebAssembly.

    Project mention: Keygaen – Go WASM PWA for PGP | reddit.com/r/golang | 2021-11-10

    Ty! Working with go-app has been very nice - I've already used React at work for 3 years or so and the concepts map really well (https://go-app.dev/ also has pretty good docs). The biggest reason I like to use it though is that its just really maintainable; I often noticed abandoning React FLOSS projects simply because the maintenance overhead was too high, and go-app fixes that. It doesn't make any assumptions about the programs logic (see https://pkg.go.dev/github.com/pojntfx/[email protected]/pkg/crypt - there is not a single dependency on go-app in the business logic) which is nice too (nothing like useEffect etc. from React) :)

  • GitHub repo genact

    🌀 A nonsense activity generator

    Project mention: I made a tool you guys can use for producing advanced Linux memes | reddit.com/r/linuxmemes | 2021-04-20
  • GitHub repo vim.wasm

    Vim editor ported to WebAssembly

    Project 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.

  • GitHub repo wasm-bindgen

    Facilitating high-level interactions between Wasm modules and JavaScript

    Project mention: Webassembly game ides that interacts with the DOM | reddit.com/r/rust | 2021-11-16

    Look into https://rustwasm.github.io/docs/wasm-bindgen/ which a library for rust-js bindings. From there you will land on https://rustwasm.github.io/wasm-bindgen/api/web_sys/ which is a library for binding to all APIs that browsers provide on the web".

  • GitHub repo wasm3

    🚀 The fastest WebAssembly interpreter, and the most universal runtime

    Project mention: Does it make sense to write an interpreter in a non-GC programming language (like Rust or C)? | reddit.com/r/ProgrammingLanguages | 2021-08-11

    I wondered if some interpreter for non garbage collected languages existed. I found one for Web assembly https://github.com/wasm3/wasm3 (written in C) There are apparently several C interpreters too.

  • GitHub repo lucet

    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.

  • GitHub repo ant-design-blazor

    🌈A set of enterprise-class UI components based on Ant Design and Blazor WebAssembly.

    Project mention: MudBlazor - Blazor Component Library | reddit.com/r/Blazor | 2021-09-13

    Personally I prefer AntBlazor. AntBlazor

  • GitHub repo wasm-pack

    📦✨ your favorite rust -> wasm workflow tool!

    Project mention: Rust mod team resignation | reddit.com/r/programming | 2021-11-22

    A discussion about wasm-pack's status happens on Oct 2020, where Ashley yet again opposes giving rights to the WG because it's not a trusted team and they don't feel comfortable giving the keys to randos and no one has time and whatever else. They close the thread.

  • GitHub repo pigo

    Fast face detection, pupil/eyes localization and facial landmark points detection library in pure Go.

    Project mention: I'm looking for a Go computer vision package that isn't GoCV. | reddit.com/r/golang | 2021-10-16
NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020). The latest post mention was on 2021-11-28.

WASM related posts

Index

What are some of the best open-source WASM projects? This list will help you:

Project Stars
1 yew 17,807
2 tfjs 15,755
3 assemblyscript 13,035
4 filament 12,893
5 v86 12,696
6 wasmer 10,822
7 sql.js 9,524
8 TinyGo 8,933
9 Pion WebRTC 8,295
10 raylib 8,021
11 ffmpeg.wasm 6,430
12 awesome-wasm 6,318
13 wasmtime 6,258
14 Uno Platform 5,938
15 go-app 5,534
16 genact 5,072
17 vim.wasm 4,897
18 wasm-bindgen 4,627
19 wasm3 4,305
20 lucet 4,003
21 ant-design-blazor 3,838
22 wasm-pack 3,803
23 pigo 3,517
Find remote jobs at our new job board 99remotejobs.com. There are 34 new remote jobs listed recently.
Are you hiring? Post a new remote job listing for free.
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com