Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Go
  3. trpc-go

trpc-go

NOASSERTIONGov1.1.0

A pluggable, high-performance RPC framework for Go, supporting multiple protocols and services per process.

GitHubGitHub
1.2k stars140 forks0 contributors

What is trpc-go?

tRPC-Go is the Go language implementation of the tRPC framework, designed for building scalable and maintainable microservices. It provides a pluggable, high-performance RPC framework where all components are replaceable, allowing developers to customize implementations as needed. The framework supports multiple services in a single process, various protocols, and includes tools for code generation and mock testing.

Target Audience

Go developers building microservices who need a flexible, extensible RPC framework with replaceable components and robust testing capabilities. It is suitable for teams requiring high-performance services with protocol flexibility and modular architecture.

Value Proposition

Developers choose tRPC-Go for its fully pluggable architecture, which allows customization or replacement of all components, and its built-in support for multiple protocols and services within a single process. It offers comprehensive testing tools like gomock and code generation via a command-line tool, streamlining development and maintenance.

Overview

A pluggable, high-performance RPC framework written in golang

Use Cases

Best For

  • Building scalable microservices in Go with a need for customizable, replaceable components.
  • Developing high-performance RPC services that require support for multiple protocols, including trpc and HTTP.
  • Teams needing to run multiple services within a single process listening on different addresses.
  • Projects requiring extensive mock testing capabilities using gomock and mockgen for interface testing.
  • Streamlining development with code generation templates via the trpc command-line tool.
  • Implementing modular architectures where third-party plugins for codec, filter, or database integrations are needed.

Not Ideal For

  • Teams needing out-of-the-box, opinionated RPC frameworks with minimal configuration
  • Projects where performance overhead from abstraction layers is unacceptable
  • Developers unfamiliar with Go's ecosystem or RPC concepts due to the pluggable architecture's complexity
  • Environments requiring extensive third-party integrations not yet covered by the tRPC ecosystem

Pros & Cons

Pros

Fully Pluggable Architecture

All components are replaceable with custom implementations, as emphasized in the README, allowing deep customization for specific microservice needs.

Multi-Service Support

Enables running multiple services in a single process on different addresses, streamlining deployment and resource management for microservices.

Protocol Flexibility

Supports any third-party protocol via codec interfaces, with built-in trpc and HTTP, reducing lock-in and easing integration with diverse systems.

Robust Testing Capabilities

Interfaces can be mocked using gomock and mockgen, facilitating comprehensive unit testing and improving code reliability.

Code Generation Tooling

Includes a command-line tool for generating code templates, speeding up development setup and reducing boilerplate code.

Cons

Setup and Configuration Complexity

The pluggable architecture requires configuring multiple components, which can be daunting for new users and increase initial development time.

Limited Ecosystem Maturity

Compared to established frameworks like gRPC, the plugin ecosystem (e.g., codec, filter plugins) is smaller and may lack community-driven support.

Documentation Gaps

While documentation exists, the README points to external guides, and detailed examples might be sparse, making the learning curve steeper.

Frequently Asked Questions

Quick Stats

Stars1,192
Forks140
Contributors0
Open Issues5
Last commit25 days ago
CreatedSince 2023

Tags

#service-architecture#mock-testing#high-performance#http-protocol#microservices#rpc-framework#go#code-generation

Built With

G
Go

Included in

Go169.1k
Auto-fetched 1 day ago

Related Projects

Go-zeroGo-zero

A cloud-native Go microservices framework with cli tool for productivity.

Stars33,266
Forks4,313
Last commit1 day ago
go-kitgo-kit

A standard library for microservices.

Stars27,422
Forks2,439
Last commit2 years ago
KratosKratos

Your ultimate Go microservices framework for the cloud-native era.

Stars25,875
Forks4,174
Last commit3 days ago
grpc-gogrpc-go

The Go language implementation of gRPC. HTTP/2 based RPC

Stars23,032
Forks4,748
Last commit2 days ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub