A Bytecode Alliance project
Lucet is a native WebAssembly compiler and runtime. It is designed to safely execute untrusted WebAssembly programs inside your application.
Check out our announcement post on the Fastly blog.
To learn how to set up the toolchain, and then compile and run your first WebAssembly application using Lucet, see Getting started.
Lucet is developed and tested on x86-64 Linux, with experimental support for macOS. For compilation instructions, see Compiling.
Lucet supports running WebAssembly programs written in C and C++ (via
clang), Rust, and
AssemblyScript. It does not yet support the entire WebAssembly spec, but full support is
Lucet's runtime currently supports x86-64 based Linux systems, with experimental support for macOS.
The Lucet project aims to provide support for secure execution of untrusted code. Security is achieved through a combination of Lucet-supplied security controls and user-supplied security controls. See Security for more information on the Lucet security model.
The Lucet project team welcomes security reports and is committed to providing prompt attention to security issues. Security issues should be reported privately via Fastly’s security issue reporting process. Remediation of security vulnerabilities is prioritized. The project teams endeavors to coordinate remediation with third-party stakeholders, and is committed to transparency in the disclosure process.