An HTTP server for Wasm testing like gopherjs serve
go install github.com/hajimehoshi/wasmserve@latest
Usage of wasmserve
-allow-origin string
Allow specified origin (or * for all origins) to make requests to this server
-http string
HTTP bind address to serve (default ":8080")
-overlay string
Overwrite source files with a JSON file (see https://pkg.go.dev/cmd/go for more details)
-tags string
Build tags
Once the browser loads the page, you can trigger a reload by making a call to teh server at /_notify
, like this:
curl localhost:8080/_notify
This will make the browser reload. You can add this command to a build script or to an IDE command, to have the browser automatically update without leaving your IDE.
Running a remote package
# Be careful that `-tags=example` is required to run the below example application.
wasmserve -tags=example github.com/hajimehoshi/wasmserve/example
And open http://localhost:8080/
on your browser.
Running a local package
git clone https://github.com/hajimehoshi/ebiten # This might take several minutes.
cd ebiten
wasmserve -tags=example ./examples/sprites
And open http://localhost:8080/
on your browser.
This application sometimes does not work under WSL, due to bugs in WSL, see hajimehoshi#5 for details.
- If you want to change the working directory to serve, you can use cd with parentheses:
(cd /path/to/working/dir; wasmserve github.com/yourname/yourpackage)
- To trigger a browser reload from a script, make a call to
/_notify
, like this:
curl http://localhost:8080/_notify
This will make the browser refresh the page.