awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
wasm3 avatar

wasm3/wasm3

0
View on GitHub↗
twitter.com/wasm3_engine↗

Wasm3

Wasm3 is a WebAssembly interpreter designed for embedded runtime integration. It enables the execution of portable binary logic on microcontrollers and resource-constrained hardware, providing support for modules that utilize the WebAssembly System Interface to interact with system resources.

The runtime employs register-based bytecode interpretation and direct-threaded dispatch to map virtual registers to physical CPU registers. It includes a host-call interface to map imports to C functions and utilizes static module validation to ensure bytecode follows specification rules before execution.

The project provides resource management through linear memory allocation limits and instruction-level gas metering to prevent infinite loops and system exhaustion. Observability is handled via execution tracing, flow monitoring, and interpreter operation profiling. For development and quality assurance, the runtime includes an interactive REPL and supports coverage-guided fuzzing.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Features

  • Microcontroller Execution - Interprets binary instructions across various microcontrollers and processor architectures for execution on embedded systems.
  • Register-Based Bytecode Interpretation - Translates bytecode into machine operations by mapping virtual registers to physical CPU registers for high-performance execution.
  • Host-Call Interfaces - Maps WebAssembly imports to C functions to allow guest modules to interact with the host system.
  • Runtime Embedding - Integrates a lightweight interpreter into existing software to enable the execution of portable binary formats.
  • Register-Based Bytecode - Employs a register-based bytecode architecture that maps virtual registers to physical CPU registers for improved performance.
  • Embedded WebAssembly Runtimes - Provides a high-performance WebAssembly runtime optimized for resource-constrained embedded hardware.
  • WASI Implementations - Implements the WebAssembly System Interface to enable portable binary modules to interact with system resources.
  • Bytecode Specification Validators - Performs static validation of binary structure and type signatures to ensure compliance with WebAssembly specifications before execution.
  • Execution Halting Limits - Constrains computational resource usage for modules and halts execution when predefined gas limits are exceeded.
  • Resource Metering - Implements instruction-level gas metering to track resource consumption and prevent infinite loops.
  • Linear Memory Managers - Manages a contiguous block of linear memory to represent the WebAssembly heap with security bounds checking.
  • WebAssembly Memory Allocators - Provides maximum memory allocation thresholds to ensure stable execution on resource-constrained embedded devices.
  • System Call Mapping - Translates standardized WASI system interface calls into host-specific operating system or hardware functions.
  • Direct-Threaded Interpreters - Uses a direct-threaded dispatch mechanism to optimize the bytecode interpreter loop by jumping directly to instruction handlers.
  • Computational Resource Limiting - Constrains memory usage and gas consumption to prevent infinite loops on embedded devices.
  • Language Implementations - High-performance WebAssembly interpreter.
  • Libraries - High-performance WebAssembly interpreter for embedded devices.
  • Runtime and Embeddings - High-performance, lightweight WebAssembly interpreter.
7,936 stars·525 forks·C·MIT·21 views

Star history

Star history chart for wasm3/wasm3Star history chart for wasm3/wasm3

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

Projects sharing features with Wasm3

These projects share indexed features with Wasm3. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • janet-lang/janetjanet-lang avatar

    janet-lang/janet

    4,308View on GitHub↗

    Janet is a Lisp-based dynamic programming language featuring a register-based bytecode virtual machine and an embeddable scripting engine. It functions as a fiber-based concurrency runtime and includes a parsing engine based on Parsing Expression Grammars. The project is distinguished by its ability to be integrated into C or C++ applications via a minimal header interface. It utilizes a Lisp-style macro system for compile-time code transformation and employs prototype-based table inheritance for object-oriented behavior. The runtime covers a broad set of capabilities, including asynchronous

    Ccfunctional-languageimperative-language
    View on GitHub↗4,308
  • bytecodealliance/wasm-micro-runtimebytecodealliance avatar

    bytecodealliance/wasm-micro-runtime

    5,990View on GitHub↗
    Caotassembly-scriptembedded
    View on GitHub↗5,990
  • webassembly/wabtWebAssembly avatar

    WebAssembly/wabt

    8,038View on GitHub↗

    The WebAssembly Binary Toolkit is a suite of tools for inspecting, validating, and transforming WebAssembly modules between binary and human-readable representations. It includes a stack-based interpreter for executing modules and a transpiler that converts binary files into C source code and headers. The toolkit provides utilities for assembling human-readable text into binary modules and disassembling binary files back into text. It features a text formatter for normalizing definitions into a canonical flat representation and supports the conversion of binaries into S-expression formats. T

    C++
    View on GitHub↗8,038
  • micropython/micropythonmicropython avatar

    micropython/micropython

    21,806View on GitHub↗

    MicroPython is a lean implementation of Python 3 optimized to run on microcontrollers and other resource-constrained systems. It serves as a cross-platform embedded runtime and hardware abstraction layer, providing a firmware framework that maps high-level software commands to specific microcontroller registers across diverse processor architectures. The project functions as an embedded language interpreter that enables rapid prototyping on hardware through an interactive read-eval-print loop. It supports a wide range of target environments, including ARM, ESP32, STM32, RISC-V, and WebAssembl

    Cembeddedmicrocontrollermicropython
    View on GitHub↗21,806
Compare all 30 related projects→

Frequently asked questions

What does wasm3/wasm3 do?

Wasm3 is a WebAssembly interpreter designed for embedded runtime integration. It enables the execution of portable binary logic on microcontrollers and resource-constrained hardware, providing support for modules that utilize the WebAssembly System Interface to interact with system resources.

What are the main features of wasm3/wasm3?

The main features of wasm3/wasm3 are: Microcontroller Execution, Register-Based Bytecode Interpretation, Host-Call Interfaces, Runtime Embedding, Register-Based Bytecode, Embedded WebAssembly Runtimes, WASI Implementations, Bytecode Specification Validators.

Which projects share features with wasm3/wasm3?

Projects with overlapping indexed features include: janet-lang/janet — Janet is a Lisp-based dynamic programming language featuring a register-based bytecode virtual machine and an… bytecodealliance/wasm-micro-runtime. webassembly/wabt — The WebAssembly Binary Toolkit is a suite of tools for inspecting, validating, and transforming WebAssembly modules… micropython/micropython — MicroPython is a lean implementation of Python 3 optimized to run on microcontrollers and other resource-constrained… webassembly/wasi-sdk — The WASI SDK is a comprehensive compiler toolchain designed to transform C and C++ source code into portable,… mruby/mruby — mruby is a lightweight Ruby interpreter designed to be embedded into C applications. It compiles Ruby source code into…