johanbrandhorst / grpcweb-example

An example implementation of a GopherJS client and a Go server using the Improbable gRPC-Web implementation
MIT License
95 stars 12 forks source link
go golang gopherjs grpc grpc-web protobuf

Go gRPC-Web Example

Circle CI Go Report Card GoDoc

gRPC-Web Gopher by Egon Elbre (@egonelbre)

An example implementation of a GopherJS React client talking to a Go gRPC server using the Improbable gRPC-Web client implementation and proxy through the protoc-gen-gopherjs bindings generator.

Developing

To run the server on https://localhost:10000:

$ go run main.go

Then you'll need to also install some vendored generators:

$ make install

After that, any changes you make to the proto file in ./proto/ or the JS client code in ./client/ should be followed by

$ make regenerate

You may need to generate the client code twice as the first time will run reactGen and immutableGen which might be necessary for the subsequent gopherjs build to work.