Releases: tetratelabs/wazero
Welcome to wazero
WebAssembly is a way to safely run code compiled in other languages. Runtimes execute WebAssembly Modules (Wasm), which are most often binaries with a .wasm
extension.
wazero is the only zero dependency WebAssembly runtime written in Go and v1.0.0-pre.1 is our first milestone on the way to 1.0 in Feb 2023.
It has been ten months since Tetrate chose to evolve a hobby project of Takeshi Yoneda, into a maturing professional codebase named wazero.
This time was full of community contributions, feedback and evolution. wazero is particularly grateful to these folks because without them, WebAssembly is often too difficult. Most developers will prefer to choose an extensibility or runtime framework without having to implement each part on their own.
Please star all the projects below or otherwise tell them thanks for doing their best to bring Go forward in WebAssembly.
First, let's thank the two main compilers that can turn Go into Wasm
Here are some end-user tools that integrate wazero for to expose WebAssembly as a feature:
- capsule - Allows you to invoke potentially remote CLI and web functions.
- Trivy - a vulnerability/misconfiguration/secret scanner, extended with modules defined in WebAssembly
Here are some end-user tools who leverage functionality not specifically written for Go, using wazero. This means reuse without platform dependencies or porting!
- RethinkRAW - dcraw
- mjml-go - mgml
Here are some frameworks who make WebAssembly integration easier on the next person:
- waPC - simplifies the SDK layer between Go applications and guests functions compiled to WebAssembly.
- go-plugin - extends go applications with gRPC services, implemented with WebAssembly communicating via memory.
Finally, some in our ecosystem use wazero only because it is a more natural way to test WebAssembly in Go projects:
- karmem - a fast serialization format, which uses wazero to benchmark performance across the myriad of languages it supports.
- proxy-wasm-go-sdk - allows users to write Proxy-Wasm plugins in Go. This uses wazero to integration test proxy plugins.
We have a lot of work to do between now and February 2023 when we release 1.0. This is a combination of code, bolstering documentation on our website and supporting our ecosystem, so that they can be successful serving you.
We've also opened a gophers slack #wazero
channel for support, updates and conversation! Note: You may need an invite to join gophers. If you like what we are doing, please star our repo as folks appreciate it.
Last, but not least keep an eye out for our at least monthly pre-releases. Each moving forward will give updates that may impact or at least interest you. Thanks for reading this and best luck in your WebAssembly endeavors!