Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/johanbrandhorst/grpcweb-example
An example implementation of a GopherJS client and a Go server using the Improbable gRPC-Web implementation
https://github.com/johanbrandhorst/grpcweb-example
go golang gopherjs grpc grpc-web protobuf
Last synced: about 1 month ago
JSON representation
An example implementation of a GopherJS client and a Go server using the Improbable gRPC-Web implementation
- Host: GitHub
- URL: https://github.com/johanbrandhorst/grpcweb-example
- Owner: johanbrandhorst
- License: mit
- Created: 2017-05-16T20:09:55.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2021-06-07T02:51:21.000Z (over 3 years ago)
- Last Synced: 2024-12-13T00:51:30.929Z (about 1 month ago)
- Topics: go, golang, gopherjs, grpc, grpc-web, protobuf
- Language: Go
- Homepage:
- Size: 41.7 MB
- Stars: 95
- Watchers: 10
- Forks: 12
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Go gRPC-Web Example
[![Circle CI](https://circleci.com/gh/johanbrandhorst/grpcweb-example.svg?style=shield)](https://circleci.com/gh/johanbrandhorst/grpcweb-example)
[![Go Report Card](https://goreportcard.com/badge/github.com/johanbrandhorst/grpcweb-example)](https://goreportcard.com/report/github.com/johanbrandhorst/grpcweb-example)
[![GoDoc](https://godoc.org/github.com/johanbrandhorst/grpcweb-example?status.svg)](https://godoc.org/github.com/johanbrandhorst/grpcweb-example)![gRPC-Web Gopher by Egon Elbre (@egonelbre)](./logo.svg)
An example implementation of a
[GopherJS React](https://myitcv.io/react)
client talking to a Go gRPC server using the Improbable gRPC-Web client implementation and proxy through the
[protoc-gen-gopherjs](https://github.com/johanbrandhorst/protobuf/tree/master/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.