⚠️ looking for maintainers (dm @v_1rtl on telegram or email to v1rtl@proton.me)
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 as
README.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 <app name>
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 <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:<port>
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