{"action":"opened","issue":{"url":"https://api.github.com/repos/grpc/grpc-docker-library/issues/61","repository_url":"https://api.github.com/repos/grpc/grpc-docker-library","labels_url":"https://api.github.com/repos/grpc/grpc-docker-library/issues/61/labels{/name}","comments_url":"https://api.github.com/repos/grpc/grpc-docker-library/issues/61/comments","events_url":"https://api.github.com/repos/grpc/grpc-docker-library/issues/61/events","html_url":"https://github.com/grpc/grpc-docker-library/issues/61","id":357530515,"node_id":"MDU6SXNzdWUzNTc1MzA1MTU=","number":61,"title":"add dart grpc","user":{"login":"gedw99","id":20677314,"node_id":"MDQ6VXNlcjIwNjc3MzE0","avatar_url":"https://avatars0.githubusercontent.com/u/20677314?v=4","gravatar_id":"","url":"https://api.github.com/users/gedw99","html_url":"https://github.com/gedw99","followers_url":"https://api.github.com/users/gedw99/followers","following_url":"https://api.github.com/users/gedw99/following{/other_user}","gists_url":"https://api.github.com/users/gedw99/gists{/gist_id}","starred_url":"https://api.github.com/users/gedw99/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gedw99/subscriptions","organizations_url":"https://api.github.com/users/gedw99/orgs","repos_url":"https://api.github.com/users/gedw99/repos","events_url":"https://api.github.com/users/gedw99/events{/privacy}","received_events_url":"https://api.github.com/users/gedw99/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2018-09-06T07:33:17Z","updated_at":"2018-09-06T07:33:17Z","closed_at":null,"author_association":"NONE","body":"Would you be open to adding dart grpc ?\r\n\r\nIts now quite mature, and also gettign grpc-web soon.\r\nI typically use it to do grpc between golang servers and dart clients in flutter.\r\n\r\nREPO: https://github.com/grpc/grpc-dart\r\n\r\nTutorial: https://grpc.io/docs/tutorials/basic/dart.html\r\n\r\nHere is the tutorial using a Makefile for golang and dart talking over grpc.\r\n\r\n\r\n````\r\n# Get golang server and dart client talking over grpc.\r\n\r\n# dart Walkthrough : https://grpc.io/docs/tutorials/basic/dart.html\r\n# go equivalent: https://github.com/grpc/grpc-go/tree/master/examples/route_guide\r\n\r\nDART_LIBPATH=github.com/grpc/grpc-dart\r\nDART_LIBGOPATH=$(GOPATH)/src/$(DART_LIBPATH)\r\n\r\nGO_LIBPATH=google.golang.org/grpc\r\nGO_LIBGOPATH=$(GOPATH)/src/$(GO_LIBPATH)\r\n\r\n\r\nprint:\r\n\t@echo \r\n\t@echo DART_LIBPATH $(DART_LIBPATH)\r\n\t@echo DART_LIBGOPATH $(DART_LIBGOPATH)\r\n\t@echo \r\n\t@echo GO_LIBPATH $(GO_LIBPATH)\r\n\t@echo GO_LIBGOPATH $(GO_LIBGOPATH)\r\n\r\ndep-os:\r\n\t#go get golang.org/x/mobile/cmd/gomobile\r\n\t#gomobile init # it might take a few minutes\r\n\r\n\t# get the dart protoc plugin\r\n\tpub global activate protoc_plugin\r\n\r\ndep:\r\n\tgo get -u $(GO_LIBPATH)\r\n\tgo get -u $(DART_LIBPATH)\r\n\r\n\r\ndep-clean:\r\n\trm -rf $(DART_LIBGOPATH)\r\n\trm -rf $(GO_LIBGOPATH)\r\n\r\n\r\n## Golang stuff\r\n\r\n\r\ngo-open-code:\r\n\tcode $(GO_LIBGOPATH)/examples/route_guide\r\n\r\ngo-build:\r\n\t#cd $(GO_LIBGOPATH)/examples/route_guide && protoc -I protos/ routeguide/route_guide.proto --go_out=grpc:routeguide/generated\r\n\r\n\tcd $(GO_LIBGOPATH)/examples/route_guide/server && go generate\r\n\r\ngo-run-server:\r\n\tcd $(GO_LIBGOPATH)/examples/route_guide/server && go run server.go -json_db_file $(GO_LIBGOPATH)/examples/route_guide/testdata/route_guide_db.json -port 8080 -tls=true\r\n\r\ngo-run-client:\r\n\tcd $(GO_LIBGOPATH)/examples/route_guide/client && go run client.go -server_addr 127.0.0.1:8080 -tls=true\r\n\r\n\r\n\r\n## Flutter stuff\r\n\r\ndart-open-code:\r\n\tcode $(DART_LIBGOPATH)\r\n\r\ndart-build:\r\n\tcd $(DART_LIBGOPATH)/example/route_guide && pub get\r\n\r\n\t# gen dart server\r\n\tcd $(DART_LIBGOPATH)/example/route_guide && protoc -I protos/ protos/route_guide.proto --dart_out=grpc:lib/src/generated\r\n\r\n\t# gen golang server\r\n\t#cd $(DART_LIBGOPATH)/example/route_guide && protoc -I protos/ protos/route_guide.proto --go_out=grpc:go/generated\r\n\r\n\r\ndart-run-server:\r\n\t# run server\r\n\tcd $(DART_LIBGOPATH)/example/route_guide && dart bin/server.dart\r\n\r\ndart-run-client:\r\n\t# run server\r\n\tcd $(DART_LIBGOPATH)/example/route_guide && dart bin/client.dart -tls=true\r\n\t\r\n\r\nft-build-ios:\r\n\t# do this to bootstrap IOS befroe you start coding.\r\n\tcd caddy/example && flutter build ios --no-codesign\r\n\r\nft-open-ios:\r\n\t# open xcode proj.\r\n\topen caddy/example/ios/Runner.xcworkspace\r\n\r\nft-run-ios:\r\n\tcd caddy/example && flutter run\r\n\r\n\r\n\r\n\r\n\r\n\r\n```\r\n\r\n\r\n\r\n"}}
{"actor":{"display_login":"gedw99"}}