awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
grpc-ecosystem avatar

grpc-ecosystem/grpc-gateway

0
View on GitHub↗
19,930 stars·2,377 forks·Go·BSD-3-Clause·26 viewsgrpc-ecosystem.github.io/grpc-gateway↗

Grpc Gateway

This project is a REST-to-gRPC API gateway and JSON reverse proxy that translates RESTful HTTP requests into gRPC service calls. It functions as a protocol buffer proxy generator, providing the tools necessary to bridge JSON-based HTTP traffic with backend gRPC servers.

The system distinguishes itself by automating the creation of reverse-proxy servers and stubs through protobuf-driven code generation. It also includes a dedicated OpenAPI specification generator that produces OpenAPI v2 and v3 documents from gRPC service definitions and annotations.

The project covers a broad range of integration capabilities, including JSON-to-gRPC transcoding, request and response handling, and binary body processing. It supports advanced routing via annotation-based mapping, field-mask-based partial updates, and newline-delimited stream serialization for HTTP delivery.

Additional utility areas include observability through distributed trace propagation and health check endpoints, security controls to disable HTTP method overrides, and the ability to multiplex HTTP and gRPC traffic on a shared network port.

Features

  • gRPC API Gateways - Provides a single entry point that translates external HTTP JSON traffic into internal gRPC service communication.
  • JSON Transcoding - Translates RESTful HTTP requests into gRPC calls by mapping URL parameters and JSON bodies to protobuf messages.
  • HTTP-to-gRPC Transcoding - Converts RESTful HTTP requests into gRPC service calls using a generated reverse-proxy server.
  • Protobuf-Based Proxy Generation - Translates RESTful HTTP requests into gRPC calls by generating a proxy server from protocol buffer definitions.
  • REST to gRPC Mapping - Translates HTTP requests into gRPC service calls using protocol buffer annotations or external configs.
  • REST-to-gRPC Translation - Converts RESTful HTTP requests into gRPC service calls using a reverse-proxy server generated from protocol definitions.
  • OpenAPI Specification Generators - A tool that produces OpenAPI v2 and v3 JSON documents from gRPC service definitions and annotations.
  • Protobuf-to-Go Generators - Generates a reverse-proxy server in Go by analyzing protocol buffer files.
  • Service Stub Generators - Automatically generates the boilerplate code and service stubs required to bridge HTTP traffic to gRPC servers.
  • Proxy Stubs - Produces source code stubs that bridge HTTP and gRPC based on protocol buffer annotations.
  • Proxy Boilerplate Generators - Creates the boilerplate and stubs needed to bridge JSON-based HTTP traffic with gRPC servers.
  • gRPC JSON Reverse Proxies - Translates RESTful HTTP requests into gRPC service calls based on protocol buffer definitions.
  • JSON API Proxies - Routes HTTP requests to backend services while managing the serialization and deserialization of JSON payloads.
  • REST-to-gRPC Gateways - Maps HTTP paths and query parameters to gRPC messages for exposing backend services as REST APIs.
  • Annotation-Based Route Mapping - Maps HTTP paths and methods to gRPC services using custom options embedded in protocol buffer definitions.
  • REST to gRPC Translation - Converts incoming HTTP API calls into gRPC service requests by mapping URL paths and query parameters.
  • gRPC Service Mapping - Provides the mapping logic that links RESTful endpoints to their corresponding gRPC service implementations.
  • Header-to-Metadata Mapping - Translates incoming HTTP request headers into gRPC client metadata and converts server metadata back into response headers.
  • OpenAPI Specification Generators - Automatically derives OpenAPI specifications from gRPC service definitions and protobuf message types.
  • Field Masks - Uses field masks to specify exactly which fields to update in a resource during HTTP PATCH operations.
  • Newline-Delimited JSON Streams - Maps gRPC server streams to newline-delimited JSON streams for compatible HTTP delivery.
  • API Error Handling - Allows overriding default error responses to transform payloads and strip sensitive data from routing failures.
  • Distributed Trace Propagation - Passes tracing spans from incoming HTTP requests through to backend services using standard headers.
  • Multi-Protocol Port Multiplexing - Shares a single network port between a server, a reverse proxy, and custom handlers.
  • Partial Update Strategies - Implements partial update strategies using field masks during HTTP PATCH operations.
  • gRPC Metadata Transformation - Intercepts HTTP requests and responses to translate headers into gRPC metadata and vice versa.
  • Binary Body Processing - Processes raw request and response bodies using binary message types to bypass standard JSON serialization.
  • Dynamic Response Statuses - Controls the HTTP status code returned to the client by intercepting gRPC metadata.
  • Query Parameter Parsers - Translates complex or nested HTTP query parameters into specific gRPC request message fields using custom parsing.
  • Protobuf-to-OpenAPI Mappers - Translates protocol buffer messages and enums into OpenAPI component schemas, including support for 64-bit integers.
  • RPC Frameworks - Reverse proxy to expose gRPC as RESTful APIs.

Star history

Star history chart for grpc-ecosystem/grpc-gatewayStar history chart for grpc-ecosystem/grpc-gateway

How this analysis was created: This summary and feature list were written by an AI model that read the project's README and public documentation pages. Each feature links to the documentation it came from; stars, license and language come straight from the GitHub API. The model does not read the source code, and the analysis is refreshed when the project is re-analysed. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Open-source alternatives to Grpc Gateway

Similar open-source projects, ranked by how many features they share with Grpc Gateway.
  • danielgtaylor/humadanielgtaylor avatar

    danielgtaylor/huma

    4,170View on GitHub↗

    Huma is an OpenAPI REST framework for Go designed for building HTTP services with automatic OpenAPI 3.1 specification generation and JSON Schema validation. It serves as a toolkit for developing REST and RPC APIs with typed inputs and outputs, deriving interactive documentation directly from the source code. The framework distinguishes itself by automating the synchronization between implementation and documentation. It uses a content-negotiation engine to manage multiple serialization formats via client headers and employs a JSON Schema input validator to automatically verify request paramet

    Goapidocumentationfastapi
    View on GitHub↗4,170
  • juhaku/utoipajuhaku avatar

    juhaku/utoipa

    3,682View on GitHub↗

    utoipa is a Rust API documentation tool used to generate machine-readable OpenAPI specifications. It functions as a specification generator and schema mapper that converts Rust structs and enums into compliant OpenAPI schemas. The project distinguishes itself by using procedural macros and traits to automate metadata extraction from code. It supports complex data modeling, including generics, polymorphism, and recursive type resolution, while synchronizing field renaming and tagging from serialization attributes. It also enables the composition of modular specifications, allowing multiple sma

    Rustauto-generatedcompile-timedocumentation
    View on GitHub↗3,682
  • dodyg/practical-aspnetcoredodyg avatar

    dodyg/practical-aspnetcore

    10,382View on GitHub↗

    This project is a comprehensive sample library and implementation guide for ASP.NET Core. It provides a collection of practical examples and projects that demonstrate how to build web applications, RESTful APIs, and high-performance services. The repository focuses on a variety of architectural patterns, including the development of Minimal APIs, contract-first gRPC services, and real-time communication using WebSockets and Server-Sent Events. It includes detailed implementations for user identity and security, such as token-based authentication and CSRF protection. The codebase covers a bro

    C#asp-net-coreaspnet-coreaspnetcore
    View on GitHub↗10,382
  • domaindrivendev/swashbuckle.aspnetcoredomaindrivendev avatar

    domaindrivendev/Swashbuckle.AspNetCore

    5,492View on GitHub↗

    Swashbuckle.AspNetCore is an API specification tool and documentation generator for ASP.NET Core. It extracts metadata from source code and models to produce standardized OpenAPI specifications and interactive browser interfaces for exploring and testing web APIs. The project integrates a middleware component to serve these specifications and a Swagger UI for interactive API testing directly from a running application. It also provides a command-line exporter to extract specification files from application assemblies for use in CI/CD pipelines. The tool covers a wide range of capabilities in

    C#
    View on GitHub↗5,492
See all 30 alternatives to Grpc Gateway→

Frequently asked questions

What does grpc-ecosystem/grpc-gateway do?

This project is a REST-to-gRPC API gateway and JSON reverse proxy that translates RESTful HTTP requests into gRPC service calls. It functions as a protocol buffer proxy generator, providing the tools necessary to bridge JSON-based HTTP traffic with backend gRPC servers.

What are the main features of grpc-ecosystem/grpc-gateway?

The main features of grpc-ecosystem/grpc-gateway are: gRPC API Gateways, JSON Transcoding, HTTP-to-gRPC Transcoding, Protobuf-Based Proxy Generation, REST to gRPC Mapping, REST-to-gRPC Translation, OpenAPI Specification Generators, Protobuf-to-Go Generators.

What are some open-source alternatives to grpc-ecosystem/grpc-gateway?

Open-source alternatives to grpc-ecosystem/grpc-gateway include: danielgtaylor/huma — Huma is an OpenAPI REST framework for Go designed for building HTTP services with automatic OpenAPI 3.1 specification… juhaku/utoipa — utoipa is a Rust API documentation tool used to generate machine-readable OpenAPI specifications. It functions as a… dodyg/practical-aspnetcore — This project is a comprehensive sample library and implementation guide for ASP.NET Core. It provides a collection of… domaindrivendev/swashbuckle.aspnetcore — Swashbuckle.AspNetCore is an API specification tool and documentation generator for ASP.NET Core. It extracts metadata… fullstorydev/grpcui — grpcui is a browser-based interactive web interface and API client for executing remote procedure calls to gRPC… ricosuter/nswag — NSwag is an OpenAPI toolchain for .NET that provides a suite of generators for converting OpenAPI specifications and…