Dear gRPC

Dear gRPC,

We messed up. We are so sorry that we missed your birthday this year. Last year we celebrated with cake and fanfare, but this year we dropped the ball. Please don’t think that we love you any less.

You’re 4 now and that’s a big milestone! You’re part of so much amazing technology at companies like Salesforce, Netflix, Spotify, Fanatics, and of course, Google. In fact just this week the biggest API Google has went production-ready with gRPC.

We’re proud of you, gRPC, and we’re going to make this up to you. For starters - we got you a puppy! He’s an adorable Golden Retriever and his name is PanCakes. He loves to run back and forth with toys, packets, or messages. He’s super active and no matter how much we train him, we just can’t get him to REST. PanCakes is going to be your best friend, and ambassador.

gRPC Mascot PanCakes

Even though it’s a bit late, we still want to throw you a party, gRPC. Our friends at CNCF have planned a big event for you on March 21, and there’s going to be lots of people there! They’ll be sharing stories about the cool things they’ve built, and meeting new people. It’s an entire day all about you, and everyone there is going to learn so much. There will be other puppies who can play with PanCakes! Some of the amazing dogs from Canine Companions for Independence will be there to greet conference attendees and share how they help their humans live a more independent life.

We are so excited to see what this year holds for you, gRPC!

~ gRPC Maintainers

gRPC Mascot PanCakes


The state of gRPC in the browser

This is a guest post by Johan Brandhorst, Software Engineer at InfoSum.

gRPC 1.0 was released in August 2016 and has since grown to become one of the premier technical solutions for application communications. It has been adopted by startups, enterprise companies, and open source projects worldwide. Its support for polyglot environments, focus on performance, type safety, and developer productivity has transformed the way developers design their architectures.

So far the benefits have largely only been available to mobile app and backend developers, whilst frontend developers have had to continue to rely on JSON REST interfaces as their primary means of information exchange. However, with the release of gRPC-Web, gRPC is poised to become a valuable addition in the toolbox of frontend developers.

In this post, I’ll describe some of the history of gRPC in the browser, explore the state of the world today, and share some thoughts on the future.


gRPC Meets .NET SDK And Visual Studio: Automatic Codegen On Build

As part of Microsoft’s move towards its cross-platform .NET offering, they have greatly simplified the project file format, and allowed a tight integration of third-party code generators with .NET projects. We are listening, and now proud to introduce integrated compilation of Protocol Buffer and gRPC service .proto files in .NET C# projects starting with the version 1.17 of the Grpc.Tools NuGet package, now available from Nuget.org.

You no longer need to use hand-written scripts to generate code from .proto files: The .NET build magic handles this for you. The integrated tools locate the proto compiler and gRPC plugin, standard Protocol Buffer imports, and track dependencies before invoking the code generators, so that the generated C# source files are never out of date, at the same time keeping regeneration to the minimum required. In essence, .proto files are treated as first-class sources in a .NET C# project.


Visualizing gRPC Language Stacks

Here is a high level overview of the gRPC Stacks. Each of the 10 default languages supported by gRPC has multiple layers, allowing you to customize what pieces you want in your application.


gRPC-Web is Generally Available

We are excited to announce the GA release of gRPC-Web, a JavaScript client library that enables web apps to communicate directly with gRPC backend services, without requiring an HTTP server to act as an intermediary. “GA” means that gRPC-Web is now Generally Available and stable and qualified for production use.