Microservices with gRPC
Define a service contract in Protocol Buffers and implement a typed gRPC client and server pair in Node.js — the standard choice for fast, strongly-typed internal service-to-service communication.
Prerequisites: REST API Fundamentals with Node.js; comfort with TypeScript is helpful but not required.
Targeted versions: @grpc/grpc-js 1.14.x, @grpc/proto-loader 0.8.x (the current, actively maintained pure-JS gRPC implementation for Node — the older grpc C++-addon package is deprecated); verified against npmjs.com and grpc.io, mid-2026.
REST is a fine default for a public API, but for fast internal service-to-service calls, gRPC's binary Protocol Buffer encoding and HTTP/2 transport give you a smaller wire format, a strongly typed contract shared between client and server, and native support for streaming. You'll define a small service contract, implement a server, and call it from a typed client.
Define the service contract
Install and implement the server
Implement server streaming and a typed client
Deadlines and status codes
Secret Mission: bidirectional streaming
Before You Go
Test what you just learned
Self-testing is one of the best ways to retain new skills. Unlock project quizzes to check your understanding.
Log in to unlock0 / 7 complete
