GopherJS will compile large chunks of the Go stdlib, so the base size is a few 100KB. As your app grows, the generated code should approach the size of a normal JS app of similar size.
For instance, this demo uses the `fmt` package from the stdlib, which imports a whole lot of things. In normal Go programs, importing `fmt` means growing you binary size by a large bump.
I know the Go authors are concerned about the size of generated binaries, or at least have expressed concerns in the past. I don't know how work on that would translate in improvement to GopherJS' codegen.
For instance, this demo uses the `fmt` package from the stdlib, which imports a whole lot of things. In normal Go programs, importing `fmt` means growing you binary size by a large bump.
https://github.com/tidwall/digitalrain/blob/master/digitalra...
I know the Go authors are concerned about the size of generated binaries, or at least have expressed concerns in the past. I don't know how work on that would translate in improvement to GopherJS' codegen.