Simple CLI for setting up Go WebAssembly frontend app.
What's included
-
๐ ๏ธ Dev Server with live reload -
๐๏ธ TinyGo for small WebAssembly output -
โก Git setup with files (such asREADME.md
) -
๐ฉน Glue files (index.html
+wasm_exec.js
)
Requirements
- Go 1.12+
- Browser that supports WebAssembly
lld
(LLVM linker)
Install
go get github.com/talentlessguy/go-web-app
Then use as go-web-app
.
CLI Reference
go-web-app init
Initialize a project in a picked directory.
Project tree
out.wasm
is generated when building. Other files are automatically added.
โโโ src
โ โโโ main.go
โโโ build
โ โโโ out.wasm
โโโ go.mod
โโโ index.html
โโโ README.md
โโโ wasm_exec.js
go-web-app dev --port
Builds the project on first run and launches a development server with specified port.
Default port is 8080.
After launching a server, you should go to http://localhost:
Every time you change a file in src
dev server automatically compiles and updates the page.
go-web-app build
Compiles go code to WebAssembly. Compiled out.wasm
file could be found in build
folder.
Everything in src
compiles to build
, every go file.
After build, binary size is shown