NEW Wasmd 1.0 completes the WebAssembly Core 3.0 conformance baseline See the results →
OPEN SOURCE · RUST · WASI

The runtime for
WebAssembly

Run WebAssembly workloads with a secure, embeddable, fully controlled Rust runtime. Build, validate, publish, and distribute—from your machine to the cloud.

Apache-2.0 No private ABI Deny by default
wasmd — runtime
v1.0.0

wasmd hello.wasm

Hello from WebAssembly!

exited 0 · 15.9ms

W
Capability sandboxfilesystem · env · network
isolated
65,294spec directives passed
0conformance failures
258Core WAST files
Rust 1.85+stable toolchain
THE WASMD PLATFORM

From one module to a complete
Wasm-native ecosystem

The runtime is only the beginning. The Registry, package specification, and orchestration model form open infrastructure built for WebAssembly.

AVAILABLE

Wasmd Runtime

A WebAssembly Core 3.0 runtime written in Rust, with validation, interpretation, WASI, an embedding API, resource governance, and portable caching.

  • Complete Core 3.0 instruction set
  • WASI Preview 1 capability sandbox
  • CLI and Rust embedding API
Explore runtime capabilities
AVAILABLE

Wasm Native Registry

An open, self-hosted WebAssembly package registry. Distribute immutable modules and components by name, version, tag, and digest.

  • SHA-256 content-addressed storage
  • Automatic Component and WIT analysis
  • Compiles to registry.wasm itself
Explore the Registry
IN DESIGN

Native Orchestration

An orchestration specification centered directly on Wasm workloads, without making containers or the Kubernetes API part of the runtime boundary.

  • Workloads, revisions, and replicas
  • Capability grants and resource quotas
  • Upgrades, rollbacks, and autoscaling
View the open roadmap
RUNTIME, WITHOUT COMPROMISES

Spec compliant.
Production ready.

More than simply running Wasm. Wasmd brings conformance, resource governance, security boundaries, and production diagnostics into one focused runtime.

01

Core 3.0

Parse, validate, instantiate, and execute the standard binary format across modern WebAssembly proposals.

SIMDGCmemory64exceptionstail callsmulti-memoryfunction refsbulk memory
02

Controlled execution

Give untrusted workloads clear, predictable, and cancellable execution boundaries.

Fuel
Memory
Call depth
03

Embeddable

Control compilation, linking, stores, instances, and function calls through a compact Rust API.

let engine = Engine::default();
let module = engine.compile(bytes)?;
let instance = engine
  .instantiate(&module, &linker, &mut store)?;
04

Verifiable

Spec tests, fuzzing, Miri, ASan, differential testing, and supply-chain audits form a continuous quality loop.

100%locked baseline
DEVELOPER EXPERIENCE

One command,
from source to running

The Wasmd CLI provides one workflow for local development, CI validation, and Registry distribution, while the Rust API embeds naturally into your services.

01ValidateGet spec-level diagnostics before execution
02RunGrant files, environment, and resources explicitly
03PublishShip to the Registry by version and digest
# Compile a Rust WASI program
rustup target add wasm32-wasip1
rustc --target wasm32-wasip1 -O \
  examples/hello.rs -o hello.wasm

# Validate and run
wasmd validate hello.wasm
wasmd hello.wasm

Hello from WebAssembly!
wasmd engine readyUTF-8WASI P1
SECURE BY CONSTRUCTION

Permissions are never assumed.
They are explicitly granted.

Modules never inherit host networking, filesystems, environment variables, or arguments automatically. Every capability is explicitly granted by the host and constrained by measurable resource budgets.

  • 01
    Capability-oriented WASI

    Expose only the directories, variables, and host functions a workload actually needs.

  • 02
    Hard resource boundaries

    Limits for fuel, epochs, memory, tables, value stacks, call depth, and GC.

  • 03
    Trust no input

    Wasm, WAT, WAST, caches, linear memory, and WASI paths are all validated.

Explore the security model
MEASURED, NOT MARKETED

Every claim comes with evidence

Wasmd locks a WebAssembly Core 3.0 specification baseline and continuously proves compatibility through reproducible tests.

100%
PASSING

Core 3.0 conformance

commit fc209c5ed8afc4dfeb9252024d217da3376c7a6f

65,294directives passed
0failures
0skips
CLI startup15.997 ms
Wasm compile2,364 ns/op
Cache load2,739 ns/op
Instantiate2,292 ns/op
Invoke243 ns/op
Throughput4.1M ops/s

Performance data is a same-machine regression baseline on Windows x64 with release thin-LTO. It detects regressions and is not an absolute ranking across hardware or runtimes.

WASM NATIVE REGISTRY

Publish capabilities,
not just files

The Registry automatically unpacks uploaded WebAssembly components and analyzes WIT worlds, imports, exports, and dependency graphs—making every package understandable before it runs.

Immutable deliverySemVer, tags, and SHA-256 digests
Visible interfacesAutomatically display WIT imports and exports
Native bootstrappingRun the Registry itself on Wasmd
Publish your first module
registry.wasmd.com/packages/demo/hello
W
demo /

hello

Public package
1.0.0 latestApache-2.012.4 KB
WIT interfaceworld hello
IMPORTS

wasi:cli/stdout

wasi:clocks/wall-clock

EXPORTS

run() → result

version() → string

demo:hellowasi:cliwasi:clocks
OPEN ECOSYSTEM

Wasm-native,
starting at the interface

Wasmd uses standard WASI as its only host interface. Package, registry, and orchestration specifications evolve in the open while the runtime boundary stays simple and portable.

STABLE
01

WASI Runtime

Standard WASI Preview 1, capability grants, resource limits, and an HTTP service host.

Wasmd 1.0
BUILDING
02

Native Package

Manifests, components, resources, entry points, locked dependencies, digests, signatures, provenance, and SBOMs.

Open specification
AVAILABLE
03

Native Registry

Namespaces, immutable versions, push/pull, resolution, authentication, mirrors, and federation.

Self-hostable
PLANNED
04

Native Orchestration

Placement, replicas, health checks, updates, rollbacks, scaling, capability grants, and trust policies.

Community design
DESIGN PRINCIPLE

WebAssembly is not a smaller container.

Wasmd does not integrate Kubernetes or treat OCI and Kubernetes APIs as runtime ABIs. The ecosystem is built around Wasm components, capabilities, and portable interfaces.

REFERENCE

Runtime boundaries,
clearly defined

A stable scope, explicit limits, and clear responsibility boundaries are essential to infrastructure you can trust.

What does WASI Preview 1 support?

Arguments and environment, clocks and randomness, file descriptor I/O, path operations, poll_oneoff, sched_yield, and proc_exit. Host arguments, environment, filesystems, and networking are not inherited by default.

What is the status of the Component Model?

The Registry can identify components, reconstruct WIT, and display world imports, exports, and dependency graphs. The Component Model and WASI Preview 2 are not yet part of the Wasmd 1.0 runtime security claim.

How are malicious or runaway modules contained?

Fuel, epoch deadlines, cancellation signals, and quotas for memory, tables, value stacks, call depth, and GC establish hard boundaries. All external input is treated as untrusted.

How does the Registry store packages?

Versions are immutable and blobs use SHA-256 content-addressed storage. Reads are public; writes require scoped tokens. Admin tokens should contain at least 32 random characters, and only token hashes are stored.

Does Wasmd replace Kubernetes?

Wasmd currently focuses on the runtime and Wasm-native distribution. A future orchestration specification will cover workloads, replicas, placement, health checks, and updates without using the Kubernetes API as the runtime interface.

How do I report a security issue?

Report vulnerabilities privately through the project's security channel and include reproduction details. The maintenance target is an acknowledgment within three business days and an initial assessment within seven, avoiding public disclosure before a fix is available.

START BUILDING

Run your first Wasm
with Wasmd

The Rust toolchain is all you need. Build the runtime, compile a WASI program, and run it directly.

PowerShell
PS› cargo build --release -p wasmd-cli
   Compiling wasmd v1.0.0
    Finished release [optimized]

PS› .\target\release\wasmd.exe hello.wasm
Hello from WebAssembly!
BUILT IN THE OPEN

Infrastructure should be readable,
verifiable, and shaped together.

Wasmd is open source under Apache-2.0. Conformance results, dependency audits, SBOMs, and release processes are transparent too.