appcypher / awesome-wasm-runtimes

A list of webassemby runtimes
1.36k stars 79 forks source link
cranelift engine javascript rust virtual-machine vm wasm wasm-runtime webassembly

Awesome WebAssembly Runtimes Awesome

This repo contains a list of virtual machines and tools that execute the WebAssembly(wasm) format and/or compile it to executable machine code :octocat:

Legend

:rocket: - Active development
:sleeping: - Unmaintained (been more than a year since last commit)

CONTENTS


aWsm top⇈

aWsm is a compiler and runtime for compiling WebAssembly (Wasm) code into llvm bytecode, then into sandboxed binaries you can run on various platforms.

CMM of Wasm top⇈

A compiler from WebAssembly to native code, via the OCaml backend.

EOSVM top⇈

EOS VM is designed from the ground up for the high demands of blockchain applications which require far more from a WebAssembly engine than those designed for web browsers or standards development.

Extism top⇈

Extism's goal is to make all software programmable, and is a flexible, embedded runtime to make it easy to extend your software with WebAssembly.

FDVM top⇈

WASM runtime to develop server-side WebAssembly applications.

Fizzy top⇈

Fizzy aims to be a fast, deterministic, and pedantic WebAssembly interpreter written in C++.

GraalWasm top⇈

GraalWasm is a WebAssembly engine implemented in the GraalVM. It can interpret and compile WebAssembly programs in the binary format, or be embedded into other programs.

Happy New Moon With Report top⇈

Happy New Moon with Report is an open-source implementation of WebAssembly written entirely in Java. It is used to run or test Web Assembly Modules (*.wasm) in Java.

inNative top⇈

An AOT (ahead-of-time) compiler for WebAssembly that creates C compatible binaries, either as sandboxed plugins you can dynamically load, or as stand-alone executables that interface directly with the operating system.

Life top⇈

Life is a secure & fast WebAssembly VM built for decentralized applications, written in Go by Perlin Network.

Lucet top⇈

Lucet is a native WebAssembly compiler and runtime. It is designed to safely execute untrusted WebAssembly programs inside your application.

NOTE: Lucet is now in maintenance mode. Work has been moved to wasmtime.

Wasm3 top⇈

🚀 A high performance WebAssembly interpreter

Motor top⇈

Motor is a WebAssembly runtime, which aims for secure and efficient execution of WebAssembly programs

py-wasm top⇈

A python implementation of the WebAssembly interpreter

Serverless wasm top⇈

A small demo of Web Assembly's potential outside of browsers

Swam top⇈

WebAssembly engine in Scala

VMIR top⇈

VMIR is a standalone library written in C that can parse and execute WebAssembly and LLVM Bitcode files

wac top⇈

A Minimal WebAssembly interpreter written in C.

wagon top⇈

Wagon is a WebAssembly-based interpreter in Go, for Go.

WAKit top⇈

A WebAssembly runtime written in Swift.

Warpy top⇈

WebAssembly interpreter in RPython.

WasmEdge top⇈

A lightweight, high-performance, and extensible WebAssembly runtime for cloud native, edge, and decentralized applications. Project under CNCF.

Wasmer top⇈

Wasmer is a standalone WebAssembly runtime for running WebAssembly outside of the browser, supporting WASI and Emscripten.

Wasmi top⇈

A Wasm interpreter.

Wasmo top⇈

A WebAssembly Runtime and Compiler based on LLVM.

wasmrt top⇈

wasmrt is a runtime built for native execution of WebAssembly modules (virtualized at first, eventually JIT).

Wasmtime top⇈

Wasmtime is a standalone wasm-only runtime for WebAssembly, using the Cranelift JIT

WasmVM top⇈

An unofficial standalone WebAssembly process virtual machine

wasmvm top⇈

WebAssembly Virtual Machine, which aim to fit embedded systems.

WAVM top⇈

WebAssembly Virtual Machine, which aim to fit embedded systems.

webassembly top⇈

An experimental, minimal toolkit and runtime on top of node to produce and run WebAssembly modules

WAMR top⇈

WebAssembly Micro Runtime (WAMR) is a standalone WebAssembly (WASM) runtime with small footprint

TWVM top⇈

A tiny and efficient WebAssembly virtual machine.

Wizard top⇈

Wizard is a WebAssembly 1.0 and 2.0 spec-compliant runtime written in Virgil, with zero platform dependencies. It features a fast interpreter, baseline compilation, and advanced dynamic analysis.

wazero top⇈

wazero is a WebAssembly 1.0 and 2.0 spec compliant runtime written in Go, with zero platform dependencies.

License

CC0

To the extent possible under law, Steve Akinyemi has waived all copyright and related or neighboring rights to this work.