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.0.3

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

GitHubGitHub
1.1k stars133 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,143
Forks133
Contributors0
Open Issues12
Last commit7 months ago
CreatedSince 2023

Tags

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

Built With

G
Go

Included in

Go169.1k
Auto-fetched 8 minutes ago

Related Projects

Go-zeroGo-zero

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

Stars32,978
Forks4,292
Last commit5 days ago
go-kitgo-kit

A standard library for microservices.

Stars27,446
Forks2,445
Last commit1 year ago
KratosKratos

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

Stars25,650
Forks4,157
Last commit29 days ago
grpc-gogrpc-go

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

Stars22,921
Forks4,665
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