IndependentReserve.Grpc.Tools (nuget): Automatic generation of gRPC server and client code from .NET interfaces  When referenced by a project, this package adds itself into the compilation pipeline in the following way:  For every dependent project which is marked by the GenerateGrpc attribute, it loads all eligible C# interfaces and for every such interface generates the following code: - A set of *.proto files for the hierarchy of DTO classes referenced by the source interface; - A set of C# conversion (partial) classes which provide implicit conversion operators for "gRPC - DTO" conversion for every generated *.proto file; - A gRPC server implementation which depends on source interface (via DI) and internally calls this interface for corresponding interface method implementation; - A gRPC client class which implements source interface by calling gRPC server via gRPC.
Keywords: gRPC