awesome-grpc

gRPC toolkit

A curated collection of resources and tools for building and using gRPC-based systems

A curated list of useful resources for gRPC

GitHub

8k stars
175 watching
577 forks
last commit: 3 months ago
Linked from 2 awesome lists

awesomeawesome-listgrpcprotocol-buffers

Awesome gRPC / Documentation

Website Official documentation, libraries, resources, samples and FAQ
Technical documentation 41,968 5 days ago Collection of useful technical documentation
gRPC status codes 41,968 5 days ago Status codes and their use in gRPC
gRPC status code mapping 41,968 5 days ago HTTP to gRPC Status Code Mapping
grpc-errors 580 about 1 year ago Code examples in each language on how to return and handle error statuses
API Design Guide Google Cloud API Design Guide useful for gRPC API design insights

Awesome gRPC / Community

Community links Mailing list, Gitter, Twitter, Reddit

Awesome gRPC / Official Libraries and Tools

gRPC Core 41,968 5 days ago C, C++, Ruby, Node.js, Python, PHP, C#, Objective-C
gRPC Java 11,460 6 days ago The Java gRPC implementation. HTTP/2 based RPC
gRPC Kotlin 1,203 4 months ago The Kotlin gRPC implementation. Based on gRPC Java
gRPC Node.js 4,488 7 days ago gRPC for Node.js
gRPC Go 21,100 7 days ago The Go language implementation of gRPC. HTTP/2 based RPC
gRPC Swift 2,048 6 days ago The Swift language implementation of gRPC
gRPC Dart 857 17 days ago The Dart language implementation of gRPC
gRPC C# 4,204 7 days ago The C# language implementation of gRPC
gRPC Web 8,660 about 2 months ago gRPC for Web Clients
gRPC Ecosystem gRPC Ecosystem that complements gRPC
gRPC contrib 63 over 3 years ago Known useful contributions around github
grpc_cli 41,968 5 days ago gRPC CLI tool

Awesome gRPC / Tools / CLI

polyglot 530 about 2 years ago A gRPC command line client written in Java
grpcc 1,130 over 5 years ago Node.js grpc command-line client
gcall 12 about 6 years ago Simple Node.js gRPC command line interface
Evans 4,282 11 months ago more expressive universal gRPC (CLI) client
grpcurl 10,898 27 days ago Like cURL, but for gRPC: Command-line tool for interacting with gRPC servers
httpyac a command line client for executing integration tests for all kinds of requests (gRPC, HTTP, MQTT, Websocket)
protodot 410 11 months ago Transforming your .proto files into .dot files (and .svg, .png if you happen to have graphviz installed)
grpc-client-cli 252 9 days ago interactive gRPC client
proto2asciidoc 6 over 2 years ago Generate AsciiDoc documentation from a .proto file
proto-to-postman 26 over 4 years ago Create postman API import collection from .proto files
gWhisper 58 about 2 months ago Client with interactive tab-completion (uses reflection) and human readable format
grpcdebug 145 6 days ago Debugs serving gRPC applications with tools like channel trace info, xDS config dump, and health checking
sylk A gRPC framework for building projects in , / and from a simple CLI and powerful UI platform
grpcmd 67 3 months ago A simple, easy-to-use, and developer-friendly CLI tool for gRPC

Awesome gRPC / Tools / GUI

Postman Create, test, and debug gRPC services directly from Postman
letmegrpc 421 over 5 years ago Generate a web form gui from a grpc specification
omgRPC 464 over 6 years ago (Deprecated) - A GUI client for interacting with gRPC services, similar to what Postman is for REST APIs
grpcui 5,237 10 days ago An interactive web UI for gRPC, along the lines of postman (also, a Go library for embedding these web UIs into Go HTTP servers)
BloomRPC 9,014 almost 2 years ago (Deprecated) - A nice and simple GUI Client. Exploring and interacting with gRPC and gRPC-web services has never been simpler, Inspired By GraphQL-Playground and Postman
gRPCox 704 8 months ago Like Postman, but for gRPC. web based GUI Client for gRPC, extremely easy to use
vscode-httpyac A VSCode extension which supports sending all kinds of requests (gRPC, HTTP, MQTT, Websocket)
Milkman 1,146 about 2 months ago Extensible alternative to Postman for crafting all kinds of requests, not only for gRPC, also http, sql etc
MuninRPC 130 over 5 years ago Protobuf request and response testing application under the gRPC system
Delivery 70 over 1 year ago A simple electron app for gRPC that uses gRPCurl to autodetect all endpoints/methods and their request bodies, just modify the JSON body. Simplicity in mind
(Yodelay.io) 228 5 months ago A browser GUI Making sure your outbound 🗣️ ‘yodelay’ returns the ‘IiiOoo’ 📣 that you expect
Wombat 1,397 4 months ago A cross platform gRPC client. Auto-generates input fields from your proto files or the gRPC reflection API. Not another Electron app - built with Qt and Go
Kreya A gRPC and gRPC-web client supporting environments, templating, authentication schemes and file based syncing
Plumber 17 over 2 years ago Another one GUI for GRPC requests (reflection only)
Fint Create, run, manage performance tests and functional tests cases for gRPC service in a single (commercial) tool
Protocall A browser-based gRPC & protobuf API client. Integrates with Github and automatically resolves all proto imports with no manual configuration
Grip Native macOS client for interacting with gRPC services
ezy 990 6 months ago 🔥 Fully-featured GUI client for gRPC/gRPC-Web
Warthog 119 7 months ago A cross platform gRPC client. Input generation for all types, including nested and looped messages. Saving requests and servers
ptg 328 over 2 years ago GUI gRPC client, it is also a performance testing tool

Awesome gRPC / Tools / Testing

ghz 3,023 20 days ago Simple gRPC benchmarking and load testing tool inspired by hey and grpcurl
gatling-grpc 128 10 months ago A stress test plugin for gRPC
karate-grpc 26 3 months ago Example of using to integrate and test gRPC
strest-grpc 90 over 4 years ago A load tester for stress testing grpc intermediaries
hazana 74 4 months ago A Go package for creating load test tooling. Supports gRPC
fortio 3,363 8 days ago A microservices (http, grpc) load testing library and tool from Istio project
grpc-swagger 425 over 1 year ago Debugging gRPC application with swagger-ui
grpc-tools 1,212 about 1 year ago A suite of gRPC debugging tools. Like Fiddler/Charles but for gRPC
jmeter-grpc-plugin 42 over 1 year ago A plugin supports load test gRPC service with Jmeter
camouflage 278 9 months ago Camouflage is a backend mocking tool for HTTP, gRPC and Websockets protocols
Mediator 153 about 1 year ago Cross-platform GUI gRPC debugging proxy like charles but design for gRPC
grpc_bench 888 7 days ago A suite of gRPC benchmarks for different technologies
grpcdump 154 over 2 years ago Tool for capture and decode GRPC messages from ethernet traffic only for Linux
nosymouse Saas tool to functional, perfomance and secure testing gRPC
Step CI 1,671 4 months ago Open-Source API Testing and Monitoring (now with gRPC support!)
Microcks 1,413 5 days ago A 🚀 dedicated to API Mocking and Testing ( )

Awesome gRPC / Tools / Other

kafka-pixy 774 7 months ago gRPC/REST proxy for Kafka
grpc-proxy 962 5 months ago gRPC reverse proxy with the goal of making it easy to expose gRPC services over the internet
ratelimit 2,294 8 days ago Go/gRPC service designed to enable generic rate limit scenarios from different types of applications
ProfaneDB A Protocol Buffers database with gRPC API, built in C++ on top of RocksDB
danby 31 almost 2 years ago A grpc proxy for the browser
docker-protoc 726 4 days ago Dockerized protoc, grpc-gateway, and grpc_cli commands bundled with Google API libraries
grpc-json-proxy 517 3 months ago A proxy which allows existing tools like Postman or curl to interact with gRPC servers
protoc-gen-gotemplate 438 6 days ago Generic generator based on golang's template system
grpc-http-proxy 372 over 1 year ago A reverse proxy server which translate JSON HTTP requests to gRPC calls based on protoreflect
grpc-mate 75 over 5 years ago A dynamic proxy server that translates JSON HTTP requests into gRPC calls
jawlb 14 about 1 year ago An unsophisticated grpclb load balancer implementation for Kubernetes and gRPC
protoc-gen-hbs 9 over 1 year ago Fast and easy protobuf generation with handlebars and some helpers
grpcson 5 over 3 years ago An easy to use proxy which translates JSON HTTP requests to gRPC calls with web ui
rk-grpc 75 about 1 year ago Middleware and bootstrapper library for gRPC with logging, metrics, auth, tracing etc
PropaneDB 11 2 months ago A Protocol Buffers database with gRPC API and Golang driver
APISIX 14,515 7 days ago An api gateway that supports gRPC, HTTP(s) to gRPC and gRPC web request proxying
Zilla 543 8 days ago An API gateway built for event-driven architectures and streaming that supports standard protocols such as HTTP, SSE, gRPC, MQTT and the native Kafka protocol
grpc-pentest-suite 166 5 months ago A collection of tools for pentesting gRPC-Web, including a Burp Suite extension for manipulating gRPC-Web payloads

Awesome gRPC / Language-Specific / Go

go-GRPC Micro based gRPC framework for microservices
go-kit gRPC 26,621 4 months ago with gRPC as transport
gRPC over NATS 648 about 2 months ago nRPC is an RPC framework like gRPC, but for NATS
grpc-web 4,392 about 1 year ago gRPC Web implementation for Golang and TypeScript
grpc-web-devtools 409 4 months ago Chrome Browser extension to aid gRPC-Web development
rpcx 8,113 2 months ago A RPC service framework based on net/rpc like alibaba Dubbo and weibo Motan
grpclb 263 over 3 years ago External Load Balancing Service solution for gRPC written in Go
grpc-proxy 962 5 months ago gRPC proxy is a Go reverse proxy that allows for rich routing of gRPC calls with minimum overhead
go-microservice-helpers 422 almost 6 years ago A collection of handy snippets that simplify creation of gRPC servers and clients
lile 1,506 over 1 year ago Easily create gRPC services in Go
proteus 735 about 4 years ago Generate .proto files from Go source code
protoc-gen-cobra 189 almost 2 years ago Command line tool generator for Go gRPC
gRPC over WebSocket 37 about 7 years ago connect to a gRPC Server behind a firewall by using a pre-established WebSocket connection
yarpc 414 6 days ago A message passing platform for Go, including support for gRPC
promgrpc 52 3 months ago Prometheus instrumentation for gRPC based services
protoreflect 1,350 about 2 months ago Reflection (Rich Descriptors) for Go Protocol Buffers
grpchan 205 7 months ago Channels for gRPC: custom transports, such as in-process and HTTP 1.1
grpcui 5,237 10 days ago Embed a gRPC web UI into a Go gRPC/HTTP server
clay 290 6 months ago Minimal server platform for gRPС+REST+Swagger APIs
grpc-consul-resolver 323 4 months ago Easy to use endpoints resolver for the services registered in the
kuberesolver 545 5 months ago gRPC Load Balancer with Kubernetes resolver
ttrpc 559 24 days ago GRPC for low-memory environments
grapi 427 about 3 years ago 😮 A surprisingly easy API server and generator in gRPC and Go
gripmock 660 3 months ago gRPC Mock Server
grpc-gateway-boilerplate 479 about 1 year ago All the boilerplate you need to get started with writing grpc-gateway powered REST services in Go
protoc-gen-struct-transformer 203 about 3 years ago Transformation function generator for protocol buffers
cmux 2,583 11 months ago Connection multiplexer for GoLang: serve different services on the same port! Supports gRPC
go-grpc-channelz 43 12 months ago A channelz UI for Golang. Channelz is an approved and already implemented proposal describing the inner state of gRPC connections/channels. go-grpc-channelz provides a simple UI for channelz for easy diagnosis
goprotoc 85 9 months ago Library for writing protoc plugins in Go; also includes a pure-Go protoc replacement
gRPC for production 207 over 2 years ago A Golang project that provides the core requirements for a production-ready gRPC communication
protoc-gen-mock 47 over 3 years ago A protoc plugin to generate gRPC mock services from proto definitions in Golang
Pike 312 over 2 years ago — Generate CRUD gRPC backends from single YAML description
Mortar 678 11 months ago GO framework for building gRPC (and REST) web services with DI, Telemetry and more
sqlc-grpc 132 about 2 months ago Generate gRPC/HTTP server (with metrics, tracing, swagger and grpcui) from SQL
protoc-gen-fieldmask 23 7 days ago A protoc plugin that generates fieldmask paths as static type properties of proto messages

Awesome gRPC / Language-Specific / Node.js

Mali 887 6 months ago A minimalistic gRPC microservice framework for Node.js
grpc-host-builder 5 about 2 years ago Lightweight library for building gRPC services with server side interceptors support
grpc-caller 183 over 1 year ago An improved Node.js gRPC client
grpc-create-metadata 5 over 1 year ago Helper utility for creating gRPC
grpc-create-error 8 over 1 year ago Utility function for creating for gRPC responses
grpc-error 4 almost 2 years ago class that wraps
grpc-inspect 9 almost 6 years ago gRPC protocol buffer inspection utility
Node.js Proto Files 76 22 days ago All of the Google API's protocol buffer files
grpc-bus 43 over 7 years ago Call gRPC services (even streams!) from the browser over any two-way socket to Node and soon Go
grpc-errors 4 over 1 year ago A quick and easy way of generating errors for use with grpc
grpc-dynamic-gateway 110 almost 4 years ago Like grpc-gateway, but written in node and dynamic
node-protoc-plugin 26 over 7 years ago Create protoc code-generation plugins easily in nodejs
grpc-promise 81 about 5 years ago GRPC promisify module for all Request/Response types: standard and stream
firecomm 226 almost 2 years ago Feature library for gRPC-Node
grpc-web-gateway – HTTP & WebSocket proxy gateway for gRPC services
grpc-reflection-js 20 4 months ago – gRPC Reflection client for JS

Awesome gRPC / Language-Specific / Java

gax-java 161 over 1 year ago Google API Extensions for Java
Armeria 4,829 6 days ago Asynchronous RPC/REST library built on top of Java 8, Netty, HTTP/2, Thrift and gRPC
grpc-spring-boot-starter 44 about 1 year ago Spring Boot starter module for gRPC framework
grpc-spring-boot-starter 2,229 10 months ago Spring Boot starter module for gRPC framework from LogNet
reactive-grpc 831 7 months ago Integrates reactive programming with grpc-java
grpc-java-contrib 219 over 1 year ago Useful extensions for the grpc-java library
rejoiner 3,669 over 1 year ago Generates a GraphQL schema from gRPC microservices
hoverfly-java-grpc MITM proxy for recording and simulating gRPC services
grpcmock 146 14 days ago A gRPC Java testing tool to easily mock endpoints of gRPC services for IT or Unit testing
protoc-gen-java-optional 8 about 1 year ago A Java Protoc plugin extending generated java classes with null safe and methods

Awesome gRPC / Language-Specific / Ruby

gruf 626 4 months ago gRPC Ruby Framework
gapic-generator-ruby 45 8 days ago Generates Ruby gRPC client libraries from protocol buffer definitions of an API

Awesome gRPC / Language-Specific / Python

Bali 262 4 months ago Simplify Cloud Native Microservices development base on FastAPI and gRPC
grpclib 938 4 months ago Pure-Python gRPC implementation, based on hyper-h2 project
pytest-grpc 126 6 months ago pytest plugin which allow test gRPC services
grpcalchemy 84 2 months ago The Python micro framework for building gPRC application
django-grpc 228 about 1 year ago Django application to build gRPC services with access to ORM, settings and everything else
garuda 24 over 1 year ago Automagically Exposing Django ORM over gRPC for microservices written in any other languages
django-grpc-framework 390 almost 2 years ago A gRPC toolkit for Django inspired by djangorestframework
grpc_requests 33 7 days ago GRPC for Humans! grpc reflection support client. you can request grpc just like REST(No need Stub!)
betterproto 1,546 8 days ago More pythonic gRPC based on grpclib and dataclasses

Awesome gRPC / Language-Specific / C#

MagicOnion 3,873 8 days ago gRPC based HTTP/2 RPC Streaming Framework for .NET, .NET Core and Unity
Grpc.Tools gRPC and Protocol Buffer compiler for managed C# and native C++ projects. See tutorial
GrpcBrowser 24 over 2 years ago a web UI for interactively debugging all types of gRPC endpoints

Awesome gRPC / Language-Specific / Rust

grpc-rs 1,807 3 months ago The gRPC library for Rust built on C Core library and futures
grpc-rust 1,374 8 months ago Rust implementation of gRPC
tower-grpc 564 about 5 years ago A client and server gRPC implementation based on Tower
tonic 10,019 5 days ago A native gRPC client & server implementation with async/await support

Awesome gRPC / Language-Specific / Haskell

grpc-haskell 155 about 6 years ago gRPC library binding for Haskell

Awesome gRPC / Language-Specific / Erlang

Erlang grpc 100 over 1 year ago Erlang library for gRPC
grpcbox 139 7 months ago Erlang grpc client and server
bert 18 about 3 years ago Erlang Google Protobuf V3 generator from HRL files

Awesome gRPC / Language-Specific / Elixir

grpc-elixir 1,402 about 1 month ago The Elixir implementation of gRPC

Awesome gRPC / Language-Specific / Elm

elm-protobuf 94 about 2 years ago Protoc plugin generating elm code from proto definitions

Awesome gRPC / Language-Specific / TypeScript

ts-protoc-gen 1,364 10 months ago Protoc Plugin for TypeScript Declarations
protoc-gen-tstypes Configurable Protoc Plugin to generate TypeScript types
sisyphus.js 22 about 1 year ago gRPC runtime and compiler for Web Clients by HTTP transcoding. Recommend using with back-end framework
protoc-gen-grpc-gateway-ts 141 over 1 year ago TypeScript client generator for the grpc-gateway project that generates idiomatic TypeScript clients that connect the web frontend and golang backend fronted by grpc-gateway
protobuf-ts 1,095 17 days ago Protoc plugin and runtime for TypeScript. Generates gRPC server/client for Node.js, gRPC-Web/Twirp clients for browser, uses Fetch API
ts-proto 2,164 5 days ago Transforms your .proto files into strongly-typed, idiomatic TypeScript files!
grpc-js-typescript 185 27 days ago Examples of how to use gRPC with TypeScript & Node.js
nice-grpc 433 20 days ago gRPC library for Node.js and the Browser with modern API and middleware support

Awesome gRPC / Language-Specific / Scala

ScalaPB Protocol Buffer Compiler for Scala
Akka-gRPC Akka gRPC provides support for building streaming gRPC servers and clients on top of Akka Streams
Mu Mu RPC is a purely functional library for building RPC endpoint-based services with support for gRPC and HTTP/2

Awesome gRPC / Language-Specific / Dart

grpc-dart Protocol Buffer Compiler for Dart

Awesome gRPC / Language-Specific / Kotlin

kroto-plus 493 almost 4 years ago gRPC Coroutines Integration and Protobuf message DSL support
grpc-kotlin 218 over 2 years ago A protoc plugin for generating native Kotlin bindings using coroutine primitives for gRPC services
gapic-generator-kotlin 58 4 months ago Generates coroutine-based gRPC Kotlin client libraries from a protocol buffer description of an API
grpc-kapt 26 over 5 years ago Annotation driven gRPC clients & servers in Kotlin with coroutines
sisyphus 95 8 months ago Modern gRPC back-end development framework based on Kotlin/Spring Boot with Message DSL/ / support

Awesome gRPC / Language-Specific / Perl

grpc-perl 33 about 1 year ago Experimental Perl gRPC library supporting grpc client

Awesome gRPC / Language-Specific / C++

QtProtobuf 171 3 months ago gRPC and Protobuf generator and bindings for the Qt framework
asio-grpc 367 28 days ago Asynchronous gRPC with or

Awesome gRPC / Language-Specific / Ballerina

Ballerina gRPC 123 7 days ago Ballerina library for gRPC
Ballerina gRPC CLI 104 9 days ago Ballerina gRPC CLI tool

Awesome gRPC / Resources / Tutorials

Getting Started with Microservices using Go, gRPC and Kubernetes
gRPC in Production
gRPC Go: Beyond the basics GopherAcademy article
Building High Performance APIs In Go Using gRPC Small tutorial on building a simple API using gRPC and Go
Bidirectional gRPC streaming for Go
How We Build gRPC Services At Namely Blog article from Namely Labs
Our experience designing and building gRPC services Blog series from Bugsnag on building a new Releases dashboard backend using gRPC
Writing gRPC Interceptors in Go A simple tutorial on gRPC Interceptors
An introduction to gRPC
How we use gRPC to build a client/server system in Go A technical presentation on how to use gRPC (and Protobuf) to build a robust client/server system
Serving gRPC and HTTP services on the same port Small tutorial on how to serve http and gRPC on same port in Go
Take a REST with HTTP/2, Protobufs, and Swagger Small tutorial on how to serve http and gRPC on same port in Go
OpenCensus for Go gRPC developers Tutorial on how to use OpenCensus with gRPC and Go. Also available for and
How to develop Go gRPC microservice with HTTP/REST endpoint, middleware, Kubernetes deployment, etc A series of blog posts for gRPC development using Go.
GopherJS Client and gRPC Server A guide to implementing a GopherJS frontend to a gRPC backend exposed over HTTP via the gRPC-gateway. Also available
The G-Unit Stack: Go, GraphQL, and gRPC A blog post and tutorial on using Go, GraphQL and gRPC. Associated
Envoy, gRPC, and Rate Limiting A tutorial on using gRPC and Envoy to build a rate limit service - , VMware Open Source Technology Center
Seamless Cloud-Native Apps with gRPC-Web and Istio A tutorial on building a Cloud-Native web app using gRPC-Web and Istio - , VMware Open Source Technology Center
Backward and Forward Compatibility, Protobuf Versioning, Serialization A small article on making gRPC API changes
Node, gRPC, and Postgres This tutorial looks at how to implement an API with Node, gRPC, and Postgres
Building High Performance APIs In Go Using gRPC And Protocol Buffers An introductory gRPC Go tutorial
Understanding gRPC An introductory gRPC tutorial with example application in Go
Part 1: Demystifying gRPC A simple gRPC service with context cancelation and secure connection over SSL/TLS
Part 2: Demystifying gRPC Extend the service with gRPC streaming and Python backend
Part 3: Demystifying gRPC Add Unary and Stream gRPC Interceptors to a service and provide REST endpoints with grpc-gateway
gRPC in Microservices Tutorial on using gRPC in microservice architetures
gRPC and Protobuffer API Documentation with proto2asciidoc and code2asciidoc Tutorial on generating AsciiDoc documentation from a .proto file, includes a small gRPC demo project too
gRPC in Go A detailed tutorial for play gRPC with Go
gRPC: Top 6 Things that Bite Newbies A review of stumbling blocks for those moving to gRPC for the first time
A beginners guide to gRPC with Rust
Writing a gRPC service with Ballerina Getting started guide on building a simple gRPC service with Ballerina and invoking the service through a Ballerina gRPC client application
gRPC-web: Using gRPC in Your Front-End Application A tutorial on using gRPC-web in a frontend application
Load balancing gRPC in Kubernetes with a service mesh Explains issues load balancing gRPC, then employs a service mesh (istio) to L7 load balance a gRPC service in Kubernetes
RPC Adoption and Working Architecture Overview of gRPC and comparison with REST and WebSockets

Awesome gRPC / Resources / Videos

gRPC: Google's high-performance, open-source RPC framework GothamGo 2015 by Sameer Ajmani
Introduction to gRPC: A general RPC framework that puts mobile and HTTP/2 first Devoxx by Mete Atamel
gRPC: The Story of Microservices at Square Apigee webcast
Scalable Realtime Microservices with Kubernetes and gRPC Mark Mandel @ Google
Text to Speech server with gRPC and Kubernetes justforfunc #12
GRPC Microservices 101 Google Developer Group Washington by Ray Tsang
Efficient Microservices w/ Binary Protocol - gRPC 101 By Ray Tsang
grpc: From Tutorial to Production GopherCon 2017 by Alan Shreve
Scalable Microservices with gRPC, Kubernetes, and Docker Node Interactive 2016 by Sandeep Dinesh
Building Microservices w/gRPC & Kubernetes Philly ETE 2016 #49 by Kelsey Hightower
Building high performance microservices with Kubernetes, Go, and gRPC Google Cloud Next '17 by Andrew Jessup
Modifying gRPC Services Over Time Eric Anderson, Google at KubeCon + CloudNativeCon 2017 - Austin
Next Generation Services at Indeed Using gRPC Jaye Pitzeruse, Indeed.com at KubeCon + CloudNativeCon 2017 - Austin
Generating Unified APIs with Protocol Buffers and gRPC A video on Protocol Buffers, gRPC and Envoy from Lyft
Intro to gRPC: A Modern Toolkit for Microservice Communication A video from Twilio's Signal Conference
gRPC and Go: Developing Efficient and Type-Safe Services
Best Practices for (Go) gRPC Services
Creating GopherJS Apps with gRPC-Web At FOSDEM
justforfunc #31: gRPC Basics JustForFunc: Programming in Go series Episode 31 covering gRPC
Efficient service communication with gRPC Talk at microXchg 2018 Berlin
gRPC Java Course on Udemy Online Course (4 hours) that walks through several examples and implementations of gRPC using the Java Language
HTTP and JSON for your gRPC Services - Michael Hamrah from Full Stack Fest
Types All the Way Down — gRPC and Go Infrastructure at Lyft Christopher Burnett at Istanbul Tech Talks
Using gRPC for Long-lived and Streaming RPCs Eric Anderson, Google at KubeCon North America 2018
Intro: gRPC-Web Stanley Cheung & Wenbo Zhu, Google at at KubeCon North America 2018
gRPC Loadbalancing on Kubernetes Presentation at KubeCon Europe 2018.
Putting gRPC in Practice Presentation on working with gRPC
The Story of Why We Migrate to gRPC and How We Go About It Matthias Grüter, Spotify at KubeCon + CloudNativeCon Europe 2019
Authentication and Security in gRPC Microservices Jan Tattermusch, Google at KubeCon + CloudNativeCon Europe 2019
JustFootball’s Journey to gRPC + Linkerd in Production Ben Lambert, & Kevin Lingerfelt at KubeCon + CloudNativeCon Europe 2019
gRPC load balancing and Service Mesh Vishal Powar, Google at KubeCon + CloudNativeCon Europe 2019
Adopting gRPC: Overcoming Team and Technical Hurdles GOTO 2019 • Adopting gRPC: Overcoming Team and Technical Hurdles • Josh Humphries
Moving to gRPC Java Mya Pitzeruse at Indeed.com
Building Microservices with Go A series of tutorials for building microservices with Go, covers using gRPC ( )
Building a gRPC application in Ballerina A Demo on how to build a gRPC application in Ballerina at gRPC Meetup

Awesome gRPC / Resources / Slides

gRPC Overview An overview at gRPC: Talk at Slack by Varun Talwar
gRPC Design and Implementation April 2016 talk at Stanford by Varun Talwar
gRPC - boilerplate to high-performance scalable APIs code.talks 2015 by Robert Kubis
HTTP2 and gRPC A simple introduction about HTTP2 and gRPC by Xin Gong Chang
gRPC and Microservices Overview of Google's open source microservices framework - gRPC, based on HTTP2 and protocol buffers. Presented at Golang Melbourne, June 2016 by Jonathan Gomez
gRPC and Microservices 2 almost 5 years ago Golang Melbourne - June 2016 Go Hack Night by Jonathan Gomez
Scalable Microservices with gRPC, Kubernetes, and Containers DevFest Ukraine
OpenAPI and gRPC Side by-Side APIStrat Conference - Tim Burks
Go+Microservices at Mercari Taichi Nakashima at Go Conference 2017
gRPC - RPC rebirth? Presentation about gRPC at the 23. NetPonto community meeting in Porto by Luís Barbosa

Awesome gRPC / Resources / Examples

gifinator 139 over 7 years ago A sample application demonstrating Kubernetes, gRPC, Go and cute Gophers demoed at Google GCP Next 2017
Text to Speech server with gRPC and Kubernetes 1,476 about 5 years ago justforfunc #12
Multiplayer Simon Says - A Game using gRPC and Kubernetes 132 about 8 years ago Sample app with Go server and clients using Node.js (on Arduino and web), and Java (Android and CLI)
Go Microservices Example 1,087 11 months ago HTTP up front, Protobufs in the rear
Streaming RPC's using gRPC 168 over 7 years ago A quick demo of bi-directional streaming RPC's using grpc, Go and Python
gRPC Java Examples 876 over 3 years ago A collection of useful/essential gRPC Java Examples
gRPC/OpenCensus Demo 59 over 6 years ago Export metrics and traces from gRPC servers and clients using Java, Go and Prometheus
go-micro-services 1,087 11 months ago An demonstration of Golang micro-services that expose a HTTP/JSON frontend and then leverages gRPC for inter-service communication
Colossus 1,034 over 2 years ago An example multi-language gRPC microservice architecture built by Bazel and targeting Kubernetes
coolstore-microservices 2,478 over 1 year ago A containerized polyglot gRPC microservices based on .NET Core, Nodejs and more running on Istio
gRPC Microservices with Go and Kubernetes 41 6 months ago A sample application use gRPC in microservice and deploy in kubernetes
Making a Multiplayer Game With Go and gRPC gRPC game example in Go.
Detailed examples for Go 165 about 2 years ago A detailed gRPC example in Go
Envoy proxy as an API gateway for gRPC microservice A gRPC service in Go, built with Bazel and deployed into Kubernetes cluster with and REST API enabled
gRPC Ballerina service Example A collection of simple gRPC service examples written in Ballerina
gRPC Ballerina client Example A collection of simple gRPC client examples written in Ballerina
Go gRPC features examples 242 over 2 years ago A collection of gRPC and Go examples showcasing features of the framework
Hello gRPC 13 7 days ago Simple server and client examples showcasing gRPC features(including proxy and propagate, running in containers and kubernetes) with Java/Kotlin/Go/NodeJs/Python/Rust/C++/C#
GCP - Online Boutique application rewritten in Ballerina 16 about 2 months ago Online Boutique application rewritten in Ballerina

Awesome gRPC / Resources / Miscellaneous

gRPC with Load Balancer or Proxy or on AWS Various notes on doing gRPC behind a load balancer or proxy or on AWS
gRPC service upgrade, versioning A short possibly useful discussion on gRPC service upgrade and versioning
Packaging Generated Code for gRPC Services An article demonstrating a strategy on how to version and package gRPC libraries
Migrating APIs from REST to gRPC at WePay A blog post on migrating from REST to gRPC

Awesome gRPC / Protocol Buffers / Documentation

Website Official website and documentation
Third-Party Add-ons for Protocol Buffers 65,753 6 days ago List of add-ons for Protocol Buffers in main github repository

Awesome gRPC / Protocol Buffers / Package Managers

buffrs 219 about 2 months ago – A modern package manager for protocol buffers and gRPC architectures

Awesome gRPC / Protocol Buffers / Tools

buf Protobuf tool that includes linting and breaking change detection. Allows many types of input including directly checking remote repositories and tarballs, and has a built-in compiler as well
prototools 167 over 3 years ago Documentation generator & other tools for protobuf/gRPC
protoc-gen-apidocs 29 7 months ago Documentation generator plugin for protobuf/gRPC
protoc-gen-doc 2,655 8 days ago Documentation generator plugin for Google Protocol Buffers
Protoxygen 10 over 2 years ago plugin to generate documentation for protobuf/gRPC
openapi2proto 964 over 1 year ago A tool for generating Protobuf v3 schemas and gRPC service definitions from OpenAPI specifications
Wireshark Protobuf Dissector 186 almost 6 years ago A Wireshark Lua plugin for decoding Google protobuf packets.
protoc-gen-lint 284 7 days ago A plug-in for Google's Protocol Buffers (protobufs) compiler to lint .proto files for style violations
prototool 5,042 over 2 years ago Compile, lint, and format Protobuf files, and generate stubs for any lanuguage/plugin, along with Vim/IDE integration
protoc-gen-validate 3,787 10 days ago Protoc plugin to generate polyglot message validators
go-proto-validators 1,089 about 1 year ago Generate message validators from .proto annotations, used in Go gRPC middleware
protolock 602 9 months ago Protocol Buffer companion tool to and . Track your .proto files and prevent changes to messages and services which impact API compatibilty
protoc-gen-map 129 about 4 years ago SQL data mapper framework for Protocol Buffers
api-linter 594 10 days ago A linter for APIs defined in protocol buffers
protoc-gen-struct-transformer 203 about 3 years ago Transformation functions generator for Protocol Buffers
pbvm 3 over 4 years ago Protocol Buffers Version Manager
clang-format Protocol Buffers formating tool Can be used to format on save in editor such as or
intellij-protobuf-plugin 83 about 1 month ago IntelliJ-based IDEs Protobuf Language Plugin that provides Protobuf language support
GenDocu gRPC Documentation and SDK generator as a Service
protolint 579 6 days ago A pluggable linter and fixer to enforce Protocol Buffer style and conventions

Awesome gRPC / Protocol Buffers / Similar

gogoprotobuf 5,664 over 1 year ago Fork of golang/protobuf with extra code generation features
MessagePack It's like JSON, but fast and small
Thrift Thrift is an interface definition language and binary communication protocol
TChannel 1,152 over 2 years ago Network multiplexing and framing protocol for RPC
Cap’n Proto Think Protocol Buffers, except faster
FlatBuffers An efficient cross platform serialization library
RSocket Application protocol providing Reactive Streams semantics
Twirp 7,188 4 months ago A simple RPC framework with protobuf service definitions
Greenpack 115 15 days ago Serialization format similar to MessagePack, but adds field versioning and type annotation

Backlinks from these awesome lists:

More related projects: