Skip to content

wechaty/grpc

Repository files navigation

GRPC NPM PyPI Go Maven Node.js

chatie grpc

NPM Version PyPI Version node Python 3.7 Go Version Java Version

gRPC for Chatie

Usage

Node.js

@chatie/grpc@NPM

Maintainer:

  • @huan - Huan LI (李卓桓)

Python

chatie-grpc@PyPI

Maintainer:

Go

github.com/wechaty/go-grpc

Maintainer:

Java

https://mvnrepository.com/artifact/io.github.wechaty/grpc

Maven:

<dependency>
    <groupId>io.github.wechaty</groupId>
    <version>0.11.25</version>
    <artifactId>grpc</artifactId>
</dependency>

Gradle:

compile 'io.github.wechaty:grpc:0.11.25'

Maintainer:

PHP

github.com/wechaty/php-grpc

Maintainer:

Debug

  • GUI Client for GRPC Services - BloomRPC aim to give the simplest and efficient developer experience for exploring and querying your GRPC services.(Inspired by Postman and GraphQL Playground)

Build

./scripts/install-protoc.sh
npm install

https://github.com/google/protobuf/releases/latest

Generate Stubs

npm run generate

1. JS for Protocol Buffer

protoc \
  --js_out="import_style=commonjs,binary:${OUT_DIR}"

https://github.com/google/protobuf/releases/latest

2. JS for gRPC Stubs

protoc \
  --plugin="protoc-gen-grpc=`which grpc_tools_node_protoc_plugin`" \
  --grpc_out="${OUT_DIR}"

https://www.npmjs.com/package/grpc-tools

3. TypeScript Typing Definations for Protocol Buffer & gRPC Stubs

protoc \
  --plugin="protoc-gen-grpc=node_modules/grpc_tools_node_protoc_ts/bin/protoc-gen-ts" \
  --grpc_out="${OUT_DIR}"

https://github.com/agreatfool/grpc_tools_node_protoc_ts

4. JS & TS for gRPC Web

protoc \
  --plugin="protoc-gen-ts=node_modules/ts-protoc-gen/bin/protoc-gen-ts" \
  --ts_out="service=true:${OUT_DIR}"

https://github.com/improbable-eng/ts-protoc-gen

Development

gRPC CLI Debug

grpcc --proto ./service/myservice.proto --address 127.0.0.1:3466

Documentatoin

Resources

Protocol Buffer

gRPC Web

TypeScript Generator

Zoo Keeper

STUN

TCP hole punching

Reverse Engineering

Python Stub

History

v0.13 (Apr 19, 2020)

v0.11 (Apr 10, 2020)

  • Add Go Support (#50 by @dchaofei)
  • Publish Go Module at <github.com/wechaty/go-grpc>

v0.6 (Feb 2020)

  • Align gRPC Services with Wechaty Puppet Abstraction
  • Add Unit Tests

v0.2 (Jul 2018)

  • Automatic Generating gRPC Stubs
  • Publish to NPM

v0.0.1 (May 2018)

Initial commiit

Author

Huan LI (李卓桓) zixia@zixia.net

Profile of Huan LI (李卓桓) on StackOverflow

Copyright & License

  • Code & Docs © 2018-now Huan LI <zixia@zixia.net>
  • Code released under the Apache-2.0 License
  • Docs released under Creative Commons