RPC is a small remote procedure call library with a focus on building REST-ish APIs that can be natively called from the browser.
Why build yet another RPC library?
-
GRPC support for the web browser is dismal
-
GRPC tooling is not fun and not fast
-
GRPC can't run natively in a servless context
-
The Go RPC library focuses on Go to Go services
What is this library trying to do?
-
Be grok-able
-
Be orthogonal
-
Get out of its own way
-
Runnable in a servless context
Non-goals
- Be a cross language, general purpose RPC framework.