wa-lang.org/wazero@v1.0.2/site/content/_index.md (about) 1 +++ 2 title = "wazero: the zero dependency WebAssembly runtime for Go developers" 3 layout = "single" 4 +++ 5 6 WebAssembly is a way to safely run code compiled in other languages. Runtimes 7 execute WebAssembly Modules (Wasm), which are most often binaries with a 8 `.wasm` extension. 9 10 wazero is the only zero dependency WebAssembly runtime written in Go. 11 12 ## Example 13 14 The best way to learn wazero is by trying one of our [examples][1]. The 15 most [basic example][2] extends a Go application with an addition function 16 defined in WebAssembly. 17 18 ## Why zero? 19 20 By avoiding CGO, wazero avoids prerequisites such as shared libraries or libc, 21 and lets you keep features like cross compilation. Being pure Go, wazero adds 22 only a small amount of size to your binary. Meanwhile, wazero’s API gives 23 features you expect in Go, such as safe concurrency and context propagation. 24 25 ### When can I use this? 26 27 wazero is an early project, so APIs are subject to change until version 1.0. 28 To use wazero meanwhile, you need to use the latest pre-release like this: 29 30 ```bash 31 go get github.com/tetratelabs/wazero@latest 32 ``` 33 34 wazero will tag a new pre-release at least once a month until 1.0. 1.0 is 35 scheduled for Feb 2023, following the release of Go 1.20. 36 37 Meanwhile, please practice the current APIs to ensure they work for you, and 38 give us a [star][3] if you are enjoying it so far! 39 40 [1]: https://github.com/tetratelabs/wazero/blob/main/examples 41 [2]: https://github.com/tetratelabs/wazero/blob/main/examples/basic 42 [3]: https://github.com/tetratelabs/wazero/stargazers