Open-source wasm software
656 open-source libraries, tools and applications tagged wasm, ranked by how closely wasm is their primary purpose, then by adoption and maintenance health. Each entry links to a page with sources, use cases and when to choose or avoid it.
656 products, primary matches first, then adoption-weighted; health v2 shown.
| Product | Health v2 | Stars | Maturity |
|---|---|---|---|
| r-wasm/webr WebR is the R statistical programming language compiled to WebAssembly via Emscripten, allowing R code to run directly in web browsers and … | 83 | 1096 | active |
| kamgurgul/cpu-info A multiplatform application built with Kotlin Multiplatform and Compose Multiplatform that displays detailed information about a device's h… | 99 | 1095 | active |
| valentinilk/compose-shimmer A Kotlin library providing a shimmering animation effect for Jetpack Compose and Compose Multiplatform, applied via a simple Modifier.shimm… | 78 | 1086 | active |
| mlc-ai/web-stable-diffusion A project that compiles and runs Stable Diffusion text-to-image models entirely inside web browsers using WebGPU and WebAssembly, with no s… | 31 | 3724 | maintenance |
| nevalang/neva Neva is a statically typed, compiled dataflow programming language where programs are expressed as message-passing graphs that run in paral… | 92 | 1082 | active |
| rpgp/rpgp rPGP is a pure Rust implementation of OpenPGP (RFC9580, RFC4880, RFC6637) with a flexible low-level API, published as the `pgp` crate. It s… | 87 | 1078 | active |
| zpl-c/zpl zpl is a C99 cross-platform, header-only library that provides a set of commonly needed utilities for C/C++ development, replacing and exte… | 27 | 1075 | active |
| tweag/ormolu Ormolu is a formatter for Haskell source code that uses GHC's own parser and enforces a single, unconfigurable formatting style with minima… | 84 | 1073 | active |
| paulocoutinhox/pdfium-lib A build project that compiles Google's PDFium PDF rendering library for multiple platforms including iOS, Android, macOS, and WebAssembly. … | 95 | 1070 | active |
| Lokathor/bytemuck A Rust library for safely bit-casting (transmuting) between plain data types and byte slices, with traits like Pod, NoUninit, and AnyBitPat… | 75 | 1070 | stable |
| texus/TGUI TGUI is a cross-platform modern C++ GUI library providing widgets, theming, and a GUI builder tool. It supports multiple rendering backends… | 88 | 1069 | active |
| viblo/pymunk Pymunk is a Pythonic 2D rigid body physics library built on top of Munk2D (a fork of Chipmunk2D). It provides easy-to-use physics simulatio… | 74 | 1069 | stable |
| Xuanwo/backon BackON is a Rust library that makes retrying fallible functions feel like a built-in language feature, supporting both sync and async code … | 68 | 1060 | stable |
| sqlite/sqlite-wasm An npm package that wraps the official SQLite WebAssembly (Wasm) build as a convenient ES Module with added TypeScript types. It enables ru… | 93 | 1058 | active |
| i-net-software/JWebAssembly JWebAssembly is a Java bytecode to WebAssembly compiler that takes Java class files as input and generates .wasm binary or .wat text output… | 66 | 1056 | active |
| ThatOpen/engine_web-ifc web-ifc is a JavaScript/TypeScript library backed by a C++ WASM module for reading and writing IFC (BIM) files at native speeds. It is part… | 97 | 1053 | active |
| korginc/logue-sdk The logue SDK is KORG's official software development kit for building custom oscillators, synths, and effects ('units') for prologue, mini… | 65 | 1049 | active |
| smparsons/retroboy Retro Boy is a cycle-accurate Game Boy emulator written in Rust that compiles to WebAssembly for browser-based play. It features accurate C… | 55 | 1039 | active |
| rl-tools/rl-tools RLtools is a pure C++ header-only, dependency-free deep reinforcement learning library supporting algorithms like SAC, TD3, and PPO. It com… | 65 | 1036 | active |
| Kas GUI Toolkit KAS is a pure-Rust GUI toolkit providing stateful widgets with automatic layout, theming, and accessibility support. It aims to make simple… | 77 | 1035 | active |
| guybedford/es-module-lexer A tiny, fast JavaScript lexer (~7KiB gzipped with inlined WebAssembly) that parses ES module syntax to extract export names and import spec… | 99 | 1034 | stable |
| antimatter15/ocrad.js Ocrad.js is a pure-JavaScript port of the Ocrad OCR engine, compiled to JavaScript via Emscripten, that converts scanned images of text bac… | 32 | 3515 | maintenance |
| openmls/openmls OpenMLS is a Rust implementation of the Messaging Layer Security (MLS) protocol as specified in RFC 9420. It is a library providing safe, e… | 95 | 1032 | active |
| addyosmani/bg-remove A React + Vite web application that removes image backgrounds entirely in the browser using Transformers.js with the RMBG-1.4 model (and op… | 22 | 1021 | active |
| Kagami/ffmpeg.js FFmpeg compiled to JavaScript/WebAssembly via Emscripten, optimized for in-browser use with WebM and MP4 builds plus Web Worker wrappers. I… | 32 | 3460 | maintenance |
| koute/stdweb stdweb is a Rust crate providing bindings to client-side Web APIs and interoperability between Rust and JavaScript, targeting WebAssembly a… | 32 | 3452 | maintenance |
| sebpiq/WebPd WebPd is a compiler for the Pure Data audio programming language that lets you run .pd patches in web pages. It converts patches into plain… | 69 | 1003 | active |
| flaneur2020/pua-lang pua-lang is a satirical dialect of the Monkey programming language implemented in Rust, with keywords renamed to Alibaba corporate jargon (… | 32 | 3308 | maintenance |
| plasma-umass/browsix Browsix is a JavaScript framework that brings Unix-like abstractions—processes, pipes, signals, sockets, and a shared file system—to the br… | 32 | 3184 | maintenance |
| d07RiV/diabloweb A WebAssembly port of Diablo 1 (based on the devilution reverse-engineered source) that runs the classic game directly in web browsers. It … | 32 | 2886 | maintenance |
| TokamakUI/Tokamak Tokamak is a SwiftUI-compatible framework that lets developers build browser apps rendered to the DOM via WebAssembly, with a goal of suppo… | 10 | 2835 | maintenance |
| jameslittle230/stork Stork is a Rust-based tool for adding fast, client-side full-text search to static websites. It consists of a CLI that builds a search inde… | 23 | 2759 | maintenance |
| retroplasma/earth-reverse-engineering A reverse-engineering project documenting and implementing access to Google Earth's undocumented 3D satellite mode, including URL structure… | 10 | 2321 | maintenance |
| snaplet/postgres-wasm A proof-of-concept project that runs a full PostgreSQL server inside an x86 virtual machine (via v86) directly in the browser. It packages … | 10 | 2320 | maintenance |
| charto/nbind nbind is a set of C++11 header files that automatically generate JavaScript bindings for C++ libraries with a single #include, usable as No… | 23 | 1998 | maintenance |
| hugoam/two two is a C++ toolkit for rapidly prototyping live graphical applications and games, providing reflection, generic algorithms, an immediate-… | 76 | 1732 | maintenance |
| Maratyszcza/NNPACK NNPACK is a C99 acceleration package providing high-performance SIMD and multi-core CPU implementations of neural network layers, especiall… | 32 | 1710 | maintenance |
| dimforge/nphysics nphysics is a 2D and 3D rigid body physics engine for games and animations written in Rust, using ncollide for collision detection and nalg… | 32 | 1649 | maintenance |
| praeclarum/Ooui Ooui is a small cross-platform UI library for .NET that lets developers build web UIs using classic object-oriented C# code, with the brows… | 23 | 1619 | maintenance |
| calebwin/emu Emu is a Rust GPGPU library providing a CUDA-like compute-focused abstraction over WebGPU. It offers type-safe GPU data boxing, an auto-man… | 32 | 1606 | maintenance |
| syl22-00/pocketsphinx.js PocketSphinx.js is a speech recognition library that runs entirely in the web browser, built by compiling the PocketSphinx C recognizer to … | 32 | 1509 | maintenance |
| http-rs/surf Surf is an async HTTP client library for Rust with a friendly, ergonomic API and pluggable HTTP backends (curl, hyper, h1, wasm). It suppor… | 23 | 1505 | maintenance |
| WebDSP WebDSP is a client-side digital signal processing library written in C++ and compiled to WebAssembly, exposed as simple JavaScript function… | 32 | 1483 | maintenance |
| ozkriff/zemeroth Zemeroth is a minimalistic open-source 2D turn-based hexagonal tactical game written in Rust, featuring small skirmish battles with 3-6 fig… | 23 | 1458 | maintenance |
| raylib-cs/raylib-cs Raylib-cs provides C# bindings for raylib, a minimal, easy-to-use library for learning video game programming. It ships native raylib 6.0 l… | 92 | 1436 | maintenance |
| sonysuqin/WasmVideoPlayer A WebAssembly-based video player library that plays H265/HEVC and other FFmpeg-supported codecs in the browser using FFmpeg for demuxing/de… | 32 | 1391 | maintenance |
| kripken/box2d.js A direct port of the Box2D 2D physics engine to JavaScript and WebAssembly using Emscripten, with automatically generated bindings. It pres… | 32 | 1382 | maintenance |
| tsherif/space-shooter.c A cross-platform, top-down 2D space shooter written in standard C11 using only platform libraries (Win32/Xlib/Emscripten, OpenGL, XAudio2/A… | 32 | 1375 | maintenance |
| vercel-labs/scriptc scriptc is a TypeScript-to-native compiler that compiles ordinary TypeScript and JavaScript into small, fast, self-contained native executa… | 77 | 6364 | experimental |
| google/monster-mash Monster Mash is an open-source sketch-based 3D modeling and animation tool that lets users sketch a 2D character, inflate it into 3D, and a… | 61 | 1330 | maintenance |
| roc-lang/roc Roc is a fast, friendly, functional programming language implemented in Zig, with a compiler toolchain that builds to machine code or WebAs… | 79 | 6128 | experimental |
| nwidger/nintengo nintengo is a Nintendo Entertainment System (NES) emulator written in Go, capable of running .nes ROM files with audio, save states, and sc… | 23 | 1294 | maintenance |
| vim.wasm An experimental port of the Vim text editor compiled to WebAssembly using Emscripten, running in the browser via a Web Worker with SharedAr… | 50 | 5646 | experimental |
| grafbase/grafbase Grafbase is a high-performance GraphQL Federation Gateway (Rust router) plus CLI, acquired by The Guild in 2026. The cloud platform has bee… | 79 | 1228 | maintenance |
| rustgd/cgmath cgmath is a low-dimensional linear algebra library for Rust targeted at computer graphics applications, providing vectors, square matrices,… | 32 | 1204 | maintenance |
| CanadaHonk/porffor Porffor is an ahead-of-time JavaScript/TypeScript compiler that compiles JS source through an IR into C, producing native executables or Wa… | 95 | 5289 | experimental |
| malisper/pgrust pgrust is a full rewrite of PostgreSQL in Rust that is wire- and SQL-compatible with Postgres and passes all 46,066 tests of the Postgres r… | 78 | 5288 | experimental |
| Orillusion Orillusion is a pure Web3D rendering engine built entirely on the WebGPU standard, written in TypeScript. It aims to deliver desktop-level … | 81 | 5219 | experimental |
| vugu/vugu Vugu is an experimental Go library for building web user interfaces that compile to WebAssembly and run in the browser. Inspired by Vue, it… | 75 | 5005 | experimental |
| PaddlePaddle/Paddle.js Paddle.js is a browser-based deep learning inference engine for Baidu PaddlePaddle models, running via WebGL, WebGPU, or WebAssembly backen… | 23 | 1104 | maintenance |
| flyover/imgui-js JavaScript/TypeScript bindings for Dear ImGui, compiled to WebAssembly via Emscripten, enabling immediate-mode GUI rendering in the browser… | 32 | 1061 | maintenance |
| lethal-guitar/RigelEngine A modern C++ re-implementation of the classic 1993 DOS game Duke Nukem II, acting as a drop-in replacement for the original executable by r… | 66 | 1010 | maintenance |
| linebender/vello Vello is a GPU compute-centric 2D vector graphics rendering engine written in Rust, built on wgpu. It renders large 2D scenes (shapes, grad… | 95 | 4423 | experimental |
| gosub-io/gosub-engine Gosub is a modular, embeddable web browser engine written from scratch in Rust, with spec-compliant HTML5 and CSS3 parsers, an async networ… | 82 | 3683 | experimental |
| GetFirefly/firefly Firefly is an alternative implementation of the BEAM virtual machine, including a compiler and runtime for BEAM languages like Erlang and E… | 10 | 3581 | experimental |
| vercel-labs/fx fx is a tiny, open-source coding agent harness and CLI written in Zig, designed for minimalism, fast cold starts, and embeddability in larg… | 81 | 3535 | experimental |
| artichoke/artichoke Artichoke is a Ruby implementation written in Rust and Ruby, aiming for MRI compatibility and targeting recent MRI Ruby. It can compile to … | 10 | 3125 | experimental |
| orbitinghail/sqlsync SQLSync is a collaborative offline-first wrapper around SQLite that synchronizes web application state between users, devices, and the edge… | 50 | 2915 | experimental |
| hexops/vecty Vecty is a Go frontend framework for building responsive and dynamic web UIs compiled to WebAssembly, with an efficient DOM diffing model s… | 10 | 2903 | experimental |
| OpenSwiftUI OpenSwiftUI is an open-source implementation of Apple's SwiftUI framework, aiming for API compatibility with the original. It targets build… | 91 | 2467 | experimental |
| chinedufn/percy Percy is a collection of Rust libraries for building frontend browser apps with Rust and WebAssembly, centered on an html! macro that gener… | 73 | 2314 | experimental |
| microsoft/aici AICI (Artificial Intelligence Controller Interface) is a Microsoft Research prototype that lets developers write Wasm-based controllers to … | 19 | 2076 | experimental |
| rui rui is an experimental declarative GPU-rendered UI library for Rust, inspired by SwiftUI. It uses reactive state-driven re-rendering with n… | 66 | 2044 | experimental |
| Diamond Types CRDT A high-performance Rust CRDT library for concurrent text editing, enabling multiple users to edit shared documents in a P2P network without… | 74 | 1843 | experimental |
| RibirX/Ribir Ribir is a non-intrusive, declarative GUI framework for Rust that builds multi-platform applications (desktop, mobile, web/WASM) from a sin… | 72 | 1733 | experimental |
| FastVM/minivm MiniVM is a small but optimizing virtual machine and runtime written in C11, featuring a just-in-time compiler built on Cuik's TB backend. … | 30 | 1667 | experimental |
| lcompilers/lpython LPython is an ahead-of-time Python compiler written in C++ that compiles a subset of Python to fast native binaries via LLVM, C, C++, and W… | 44 | 1635 | experimental |
| dotnet/runtimelab dotnet/runtimelab is a sandbox repository for experimenting with new .NET runtime features and ideas that may eventually be upstreamed into… | 76 | 1620 | experimental |
| hugoam/toy toy is a thin and modular C++ game engine built on top of the 'two' library, aiming to provide the simplest technology stack for making 2D … | 32 | 1594 | experimental |
| MapLibre maplibre-rs is a portable vector map renderer written in Rust that uses WebGPU for cross-platform rendering on web, mobile, and desktop. It… | 77 | 1584 | experimental |
| alshdavid-public/BorrowScript BorrowScript is an experimental programming language that combines TypeScript-like syntax with a Rust-style borrow checker, compiled to sma… | 32 | 1456 | experimental |
| tomaka/redshirt Redshirt is an experimental operating system written in Rust where all executables are WebAssembly programs loaded from an IPFS-like decent… | 54 | 1435 | experimental |
| compose-miuix-ui/miuix Miuix is a UI component library for Compose Multiplatform that implements the Xiaomi HyperOS design language. It provides basic and complex… | 89 | 1381 | experimental |
| joelseverin/linux-wasm A set of scripts and patches that build a Linux kernel with a WebAssembly architecture port, runnable in the browser. It combines LLVM tool… | 51 | 1248 | experimental |
| moonbitlang/core moonbitlang/core is the standard library for the MoonBit programming language, released alongside the compiler. It provides builtin types, … | 71 | 1226 | experimental |
| kettle11/tangle Tangle is a TypeScript library that wraps WebAssembly modules to make building multiplayer apps and games easy, handling message passing, s… | 32 | 1207 | experimental |
| macaly/almostnode almostnode is a TypeScript library that emulates a Node.js runtime entirely in the browser, providing a POSIX-compatible virtual filesystem… | 42 | 1180 | experimental |
| syumai/workers A Go package that lets you run an HTTP server written in Go on Cloudflare Workers by compiling to WebAssembly. It provides bindings for Clo… | 97 | 1162 | experimental |
| phoboslab/high_impact high_impact is a 2D game engine written in C, designed as a framework for building action games like platformers, twin-stick shooters, and … | 24 | 1142 | experimental |
| drogus/jawsm Jawsm is an experimental JavaScript to WebAssembly compiler written in Rust that produces standalone WASM binaries executable without bundl… | 25 | 1106 | experimental |
| tantaraio/voy Voy is a tiny vector similarity search engine written in Rust and compiled to WebAssembly, using a k-d tree index for fast nearest-neighbor… | 32 | 1076 | experimental |
| SpotiFlyer SpotiFlyer is a Kotlin Multiplatform music downloader app supporting Spotify, YouTube, YouTube Music, Gaana, Jio-Saavn, and SoundCloud, cap… | 23 | 11280 | abandoned |
| Kuzu Kuzu is an embedded, serverless property graph database written in C++ that implements the Cypher query language and is optimized for fast … | 10 | 4020 | abandoned |
| AmbientRun/Ambient Ambient is an open-source cross-platform runtime and multiplayer game engine built with Rust, WebAssembly, and WebGPU, featuring an in-game… | 23 | 3905 | abandoned |
| wasmerio/winterjs WinterJS is a high-performance JavaScript server that executes Service Worker scripts following the WinterCG specification, built on Spider… | 10 | 3188 | abandoned |
| feather-rs/feather Feather is a Minecraft server implementation written in Rust, built on the libcraft crates and the Quill WebAssembly plugin API. It aims fo… | 23 | 2700 | abandoned |
| bgrins/videoconverter.js A JavaScript library that compiles FFmpeg to JavaScript via Emscripten, enabling video conversion and manipulation entirely in the web brow… | 32 | 2352 | abandoned |
| floooh/oryol Oryol is a small, portable, extensible C++ 3D coding framework that renders through GL, GLES2, WebGL, Metal, and D3D11 from the same source… | 32 | 2075 | abandoned |
| bodil/typed-html A Rust crate providing an html! macro for building fully type-checked HTML documents using JSX-compatible syntax. It validates HTML5 tags, … | 10 | 1850 | abandoned |
| pypyjs/pypyjs PyPy.js is the PyPy Python interpreter compiled to JavaScript via an experimental emscripten/asm.js backend, allowing Python to run in the … | 23 | 1846 | abandoned |