Simple, reliable, interoperable.
Protobuf RPC that works.
Connect is a family of libraries for building browser and gRPC-compatible APIs. If you're tired of hand-written boilerplate and turned off by massive frameworks, Connect is for you.
Connect is a family of libraries for building browser and gRPC-compatible APIs. If you're tired of hand-written boilerplate and turned off by massive frameworks, Connect is for you.
Use it with Curl
Supports any HTTP client
$ curl \
--header 'Content-Type: application/json' \
--data '{"sentence": "I feel happy."}' \
https://demo.connectrpc.com/connectrpc.eliza.v1.ElizaService/Say{"sentence": "Feeling happy? Tell me more."}
Use it with gRPCurl
Supports any gRPC client
$ grpcurl \
-d '{"sentence": "I feel happy."}' \
demo.connectrpc.com:443 \
connectrpc.eliza.v1.ElizaService/Say{"sentence": "Feeling happy? Tell me more."}
Use it in web browsers
Supports React, Angular, Svelte, and other frameworks
Meet Eliza, our psychotherapist
Eliza: Hello, how are you feeling?
Connect shines in production. Implementations are focused — a few thousand lines of code, a handful of essential options, and a cURL-friendly protocol — which makes them stable, predictable, and debuggable.
In addition to its own protocol, Connect servers and backend clients also support gRPC — including streaming! They interoperate seamlessly with Envoy, grpcurl, gRPC Gateway, and every other gRPC implementation. Connect servers handle gRPC-Web requests natively, without a translating proxy.
Connect builds on primitives you already know. Go handlers slot right into your net/http
server and work with your existing middleware, router, and observability. TypeScript clients stay close to the fetch
API and integrate cleanly with popular UI frameworks.
Define your APIs using Protocol Buffers, the industry's most battle-tested schema definition language, and skip the hand-written boilerplate. Connect handles server-side routing, serialization, and compression, and it generates idiomatic clients in Go, TypeScript, Swift, and Kotlin.
Go guide
Servers and clients
Node.js guide
Servers and clients
Web guide
Connect on the Web
iOS guide
Swift clients available
Android guide
Kotlin clients available
Flutter guide
Dart clients available