Skip to content

Standalone JIT-style runtime for WebAsssembly, using Cranelift

License

Notifications You must be signed in to change notification settings

cdetrio/wasmtime

 
 

Repository files navigation

Wasmtime: a WebAssembly Runtime.

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

It runs WebAssembly code outside of the Web, and can be used both as a command-line utility or as a library embedded in a larger application.

Travis Status Appveyor Status Gitter chat Minimum rustc 1.30

Wasmtime is complete enough to pass the WebAssembly spec testsuite. Support for system APIs is coming soon!

One goal for this project is to implement CloudABI using WebAssembly as the code format, provide CloudABI system calls as WebAssembly host imports, and then port the Rust CloudABI package and CloudABI libc to it to support Rust, C, C , and other toolchains.

CloudABI is a natural complement for WebAssembly, since WebAssembly provides sandboxing for code but doesn't have any builtin I/O, and CloudABI provides sandboxed I/O.

Additional goals for Wasmtime include:

  • Support a variety of host APIs (not just CloudABI), with fast calling sequences, and develop proposals for system calls in the WebAssembly Reference Sysroot.
  • Implement the proposed WebAssembly C API.
  • Facilitate testing, experimentation, and development around the Cranelift and Lightbeam JITs.
  • Develop a the native ABI used for compiling WebAssembly suitable for use in both JIT and AOT to native object files.

It's Wasmtime.

About

Standalone JIT-style runtime for WebAsssembly, using Cranelift

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Rust 86.7%
  • C 9.8%
  • WebAssembly 2.3%
  • Shell 1.1%
  • CMake 0.1%