# elixir-grpc/grpc

An Elixir implementation of gRPC

Repository: https://github.com/elixir-grpc/grpc
Canonical: https://ross.abutalabs.com/products/elixir-grpc-grpc
Homepage: https://hex.pm/packages/grpc
Language: Elixir
License: Apache-2.0
License Family: permissive
Topics: grpc, elixir, grpc-elixir, rpc, http2, protobuf, google-protocol-buffers, proto
Last push: 2026-08-19T13:40:20+00:00

## Health v2 (maintenance only)
Score: 97/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 98, release rhythm 95, longevity 100
- inputs: {"age_days": 3696, "days_push": 14, "days_rel": 37, "gap_med": 14.0, "n_releases_24m": 11}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1522, forks 263 (observed 2026-08-28T04:04:57.922300+00:00)

## What it is
A full-featured Elixir implementation of the gRPC protocol supporting unary and streaming RPCs, interceptors, TLS, HTTP transcoding, and Protobuf code generation. It provides both client and server libraries for building gRPC services on the BEAM VM.

## Use cases
- build a gRPC server in Elixir
- call gRPC services from an Elixir client
- implement bidirectional streaming RPCs
- expose protobuf-defined APIs from a Phoenix/Elixir app
- add HTTP/JSON transcoding to a gRPC service
- use gRPC with TLS and interceptors on the BEAM

## When to choose
- you need gRPC client or server support in an Elixir or Erlang project
- you want streaming RPCs with a unified stream-based API
- you need HTTP transcoding or gRPC reflection in Elixir

## When to avoid
- your stack is not on the BEAM VM
- you only need simple REST APIs without protobuf
- you need first-party official gRPC tooling with broad language support

## Facets
- artifact type: library
- maturity: active
- function: rpc, http-server, http-client, serialization, middleware
- domain: apis, backend, web-development, developer-tools
- platform: elixir, jvm, windows
- tags: grpc, protobuf, http2, streaming, elixir, beam, tls, http-transcoding, interceptors, linux, macos

## Member repositories
- elixir-grpc/grpc (main) score 97

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:04:57.922300+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T04:31:46.695216+00:00, confidence not recorded.
  - readme: https://github.com/elixir-grpc/grpc (fetched 2026-08-28T04:04:57.922300+00:00, sha 9ed4f95a58be)
  - homepage: https://hex.pm/packages/grpc (fetched 2026-08-29T11:34:39.592800+00:00, sha 3c2e91769a8f)
  - site_page: https://hex.pm/docs (fetched 2026-08-29T11:34:39.597046+00:00, sha 3f449054c5e0)
  - site_page: https://hex.pm/about (fetched 2026-08-29T11:34:39.598635+00:00, sha 627eac420427)
  - site_page: https://hex.pm/docs/faq (fetched 2026-08-29T11:34:39.600396+00:00, sha 2914acf2582a)
  - site_page: https://hex.pm/pricing (fetched 2026-08-29T11:34:39.595221+00:00, sha b0a5082843ed)
- Data as of 2026-08-30T08:39:29.467469+00:00.
