This is the 2nd lesson of the WebGL Fundamentals code, ported from Javascript to TinyGo:
https://webglfundamentals.org/
Running demo:
https://justinclift.github.io/tinygo-webgl-fundamentals-lesson-2/
To compile the WebAssembly file:
$ tinygo build -target wasm -no-debug -o docs/wasm.wasm main.go
To strip the custom name section from the end (reducing file size further):
$ wasm2wat docs/wasm.wasm -o docs/wasm.wat
$ wat2wasm docs/wasm.wat -o docs/wasm.wasm
$ rm -f docs/wasm.wat