gRPC on Node.js
Implementations
For a comparison of the features available in these two libraries, see this document
Pure JavaScript Client and Server
Directory: packages/grpc-js
npm package: @grpc/grpc-js
This library implements the core functionality of gRPC purely in JavaScript, without a C++ addon. It works on the latest versions of Node.js on all platforms that Node.js runs on.
C-based Client and Server (deprecated)
Directory: packages/grpc-native-core
(lives in the grpc@1.24.x
branch) (see here for installation information)
npm package: grpc.
This is the deprecated implementation of gRPC using a C++ addon. It works on versions of Node.js up to 14 on most platforms that Node.js runs on.
Other Packages
gRPC Protobuf Loader
Directory: packages/proto-loader
npm package: @grpc/proto-loader
This library loads .proto
files into objects that can be passed to the gRPC libraries.
gRPC Tools
Directory: packages/grpc-tools
npm package: grpc-tools
Distribution of protoc and the gRPC Node protoc plugin for ease of installation with npm.
gRPC Health Check Service
Directory: packages/grpc-health-check
npm package: grpc-health-check
Health check service for gRPC servers.
gRPC Reflection API Service
Directory: packages/grpc-reflection
npm package: @grpc/reflection
Reflection API service for gRPC servers.