Skip to content

Kiln — WebAssembly component runtime for safety-critical embedded systems. Fires WASM into working software. Part of the PulseEngine toolchain.

License

Notifications You must be signed in to change notification settings

pulseengine/kiln

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

930 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Kiln

WebAssembly runtime for safety-critical systems

 

Rust WebAssembly no_std Formally Verified License: MIT

 

Meld · Loom · Synth · Kiln · Sigil

 

Meld fuses. Loom weaves. Synth transpiles. Kiln fires. Sigil seals.

A Rust implementation of a WebAssembly runtime with full Component Model and WASI Preview 2 support. Designed for safety-critical embedded systems with bounded allocations, deterministic execution, and a modular no_std architecture for automotive, medical, and aerospace environments.

Kiln bridges the gap between WebAssembly's portability and the strict requirements of safety-critical deployment. It runs on everything from cloud servers to bare-metal Cortex-M targets.

Quick Start

# Clone and build
git clone https://github.com/pulseengine/kiln
cd kiln
cargo build --bin kilnd --features "std,kiln-execution"

# Run a WebAssembly component
./target/debug/kilnd your_component.wasm --component

Architecture

  • kilnd/ — Runtime daemon (main executable)
  • kiln-runtime/ — Execution engine
  • kiln-component/ — Component Model support
  • kiln-decoder/ — Binary format parsing
  • kiln-foundation/ — Core types and bounded collections
  • cargo-kiln/ — Build tooling

Usage

# Basic component execution
kilnd component.wasm --component

# With WASI support
kilnd component.wasm --component --wasi

# Set resource limits
kilnd component.wasm --component --fuel 100000 --memory 1048576

Building

# Install build tool (optional but recommended)
cargo install --path cargo-kiln

# Build runtime
cargo build --bin kilnd --features "std,kiln-execution"

# Run tests
cargo test --workspace

Current Status

Early Development — Basic WebAssembly component execution is working:

./target/debug/kilnd hello_rust.wasm --component
# Output: Hello wasm component world from Rust!

Working

  • WebAssembly Component Model parsing and instantiation
  • WASI Preview 2 stdout/stderr output (wasi:cli/stdout, wasi:io/streams)
  • Core WebAssembly module execution
  • Basic memory management with bounds checking
  • no_std compatible foundation

In Progress

  • Additional WASI Preview 2 interfaces (filesystem, environment)
  • Cross-component function calls
  • Full Component Model linking

Formal Verification

Note

Cross-cutting verification — Rocq mechanized proofs, Kani bounded model checking, Z3 SMT verification, and Verus Rust verification are used across the PulseEngine toolchain. Sigil attestation chains bind it all together.

License

MIT License — see LICENSE.


Part of PulseEngine — formally verified WebAssembly toolchain for safety-critical systems

About

Kiln — WebAssembly component runtime for safety-critical embedded systems. Fires WASM into working software. Part of the PulseEngine toolchain.

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •  

Languages