lrt
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
goingo
-
Go 1.16 Release Notes
Go makes pretty bad WebAssembly. It only embeds in Javascript, and it's at least 2MB for Hello World. You can't really use it in server-side engines like wasmer/wasmtime.
TinyGo is far better, but only supports a subset of Go's stdlib.
I'm playing with TinyGo, and using GPRC communication with the outer engine as a poor substitute for WASM interface types.
https://github.com/fizx/goingo if you want to read the ugly prototype!
lrt
- Air – Live reload when developing with Go
-
Go 1.16 Release Notes
To do this well (for servers, which is the most common case) you need to keep the port open (and delay requests while recompilation is in progress) or clients can see transient errors. So it's probably not a language level concern, but a protocol level one (it's very solvable for HTTP for example).
I built https://github.com/superhuman/lrt which tries to solve this problem in a go-like way (no configuration required, minimal log noise, and reliability/simplicity as the primary design goals) for Superhuman.
What are some alternatives?
reflex - Run a command when files change
golang-docker-cache - Improved docker Golang module dependency cache for faster builds.
gio - Mirror of the Gio main repository (https://git.sr.ht/~eliasnaur/gio)
modd - A flexible developer tool that runs processes and responds to filesystem changes
gin - Live reload utility for Go web servers
devd - A local webserver for developers