https://github.com/bytecodealliance/componentize-go
A tool that creates Go WebAssembly components.
https://github.com/bytecodealliance/componentize-go
Last synced: 20 days ago
JSON representation
A tool that creates Go WebAssembly components.
- Host: GitHub
- URL: https://github.com/bytecodealliance/componentize-go
- Owner: bytecodealliance
- License: apache-2.0
- Created: 2025-12-16T02:52:30.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2026-01-29T17:44:31.000Z (about 1 month ago)
- Last Synced: 2026-02-15T20:25:34.620Z (26 days ago)
- Language: Go
- Homepage:
- Size: 107 KB
- Stars: 2
- Watchers: 0
- Forks: 1
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Security: SECURITY.md
Awesome Lists containing this project
README
This is a tool to convert a Go application to a [WebAssembly component](https://github.com/WebAssembly/component-model). It takes the following as input:
- a [WIT](https://github.com/WebAssembly/component-model/blob/main/design/mvp/WIT.md) file or directory
- the name of a [WIT world](https://github.com/WebAssembly/component-model/blob/main/design/mvp/WIT.md#wit-worlds) defined in the above file or directory
- the directory containing a Go module which targets said world
The output is a component which may be run using e.g. [`wasmtime`](https://github.com/bytecodealliance/wasmtime).
## Installation
### Download a release
You can download a specific release from the [release page](https://github.com/bytecodealliance/componentize-go/releases).
### Build from source
#### Prerequisites
- [**Rust toolchain**](https://rust-lang.org/) - Latest version
#### Run
```sh
cargo install --git https://github.com/bytecodealliance/componentize-go
```
## Usage
Please reference the `README.md` and `Makefile` files in each of the directories in [examples](./examples/).