awesome-repositories.com
Blog
awesome-repositories.com

Descubre los mejores repositorios open-source con nuestra búsqueda potenciada por IA.

ExplorarBúsquedas curadasAlternativas open-sourceSoftware autohospedableBlogMapa del sitio
ProyectoAcerca deCómo clasificamosPrensaServidor MCP
Aviso legalPrivacidadTérminos
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
uber avatar

uber/prototoolArchived

0
View on GitHub↗
5,036 estrellas·338 forks·Go·MIT·7 vistas

Prototool

Prototool es un kit de herramientas de desarrollo para Protocol Buffers que proporciona un conjunto de herramientas para linting, formateo y generación de código a partir de archivos de esquema. Funciona como un sistema para gestionar el ciclo de vida de las definiciones de Protocol Buffer a través de una interfaz de línea de comandos.

El kit de herramientas se distingue por proporcionar un detector de cambios disruptivos (breaking change detector) que compara diferentes versiones de definiciones para identificar cambios incompatibles en la red o en el código fuente. También incluye una interfaz de cliente gRPC capaz de invocar endpoints utilizando solicitudes JSON mediante la compilación dinámica de definiciones Protobuf.

El proyecto cubre amplias áreas de capacidad, incluyendo validación de esquemas y aplicación de estilos, generación de stubs de código específicos para cada lenguaje y gestión automatizada de binarios del compilador. También proporciona utilidades para la exportación de conjuntos de descriptores de archivos y la generación de archivos de esquema con boilerplate automatizado.

Features

  • Breaking Change Detectors - Identifies wire and source incompatible changes by comparing serialized FileDescriptorSets between different versions of definitions.
  • Protobuf Code Generators - Produces language-specific source code and file descriptor sets from Protocol Buffer definitions.
  • Protobuf Formatters - Standardizes the layout of schema files by alphabetizing imports and applying consistent spacing.
  • Protobuf Linters - Analyzes schema files against configurable rule groups to enforce naming conventions and structural requirements.
  • Protobuf Style Rules - Provides static analysis of Protobuf schemas to enforce naming conventions and structural rules via AST traversal.
  • API Specification Breaking Change Detectors - Compares different versions of Protobuf definitions to identify incompatible changes that could break service clients.
  • Protobuf Stub Generators - Generates language-specific client and server stubs from Protocol Buffer interface definitions.
  • Multi-Language Code Generators - Transforms schema definitions into source code for various languages using managed compiler versions.
  • Protobuf Code Generators - Generates language-specific source code from Protobuf definitions using a configuration-driven template mapping.
  • Style Enforcement Strategies - Validates schema files against a set of rules for naming, ordering, and structure to ensure consistency.
  • JSON-to-gRPC Translation - Enables calling gRPC endpoints using JSON requests by dynamically compiling Protobuf definitions.
  • Protobuf Syntax Validation - Validates schema files by compiling them without output stubs to ensure syntax correctness.
  • Binary Cache Managers - Manages the downloading and caching of specific compiler binaries and type definitions to ensure consistent builds.
  • Binary Process Wrappers - Wraps the official Protocol Buffer compiler to manage its installation and execution across different environments.
  • Compiler Binary Management - Buf CLI & Automation downloads, caches, and updates the schema compiler and type definitions automatically or via configuration.
  • gRPC Command-Line Clients - Provides a command-line interface for invoking gRPC methods and inspecting service definitions using JSON.
  • Interactive Clients - Enables sending JSON requests to gRPC servers by dynamically compiling Protobuf files.
  • gRPC API Testing - Sends JSON requests to gRPC endpoints by dynamically compiling Protobuf files to validate server behavior.
  • Protocol Buffer Tools - Integrated suite for compiling, linting, and formatting Protobuf files.

Historial de estrellas

Gráfico del historial de estrellas de uber/prototoolGráfico del historial de estrellas de uber/prototool

Búsqueda con IA

Explora más repositorios increíbles

Describe lo que necesitas en lenguaje sencillo: la IA clasifica miles de proyectos open-source curados por relevancia.

Start searching with AI

Alternativas open-source a Prototool

Proyectos open-source similares, clasificados según cuántas características comparten con Prototool.
  • diffplug/spotlessAvatar de diffplug

    diffplug/spotless

    5,527Ver en GitHub↗

    Spotless is a multi-language formatting orchestrator and Gradle plugin that automates code styling across various programming languages within a single build pipeline. It functions as a coordinator for multiple third-party formatters, a code style linting tool, and a system for inserting and updating standardized license headers. The project distinguishes itself through git-integrated style enforcement, using pre-push hooks and git references to apply formatting only to modified files or lines. It supports shared build configurations, allowing formatting rules to be distributed and loaded acr

    Java
    Ver en GitHub↗5,527
  • grpc/grpc-rustAvatar de grpc

    grpc/grpc-rust

    12,338Ver en GitHub↗

    grpc-rust is a native gRPC framework for Rust designed for building high-performance remote procedure call clients and servers. It provides an asynchronous communication stack and a protocol buffers implementation for encoding, decoding, and generating type-safe code from service definitions. The project enables the implementation of unary and bi-directional data streaming over the HTTP/2 protocol. It includes specialized support for gRPC-Web integration, allowing browser-based clients to communicate with services through protocol translation. The infrastructure covers a broad range of distr

    Rustasyncgrpcproto
    Ver en GitHub↗12,338
  • go-swagger/go-swaggerAvatar de go-swagger

    go-swagger/go-swagger

    9,989Ver en GitHub↗

    go-swagger is a toolkit for working with Swagger/OpenAPI 2.0 specifications in Go. It generates server, client, and CLI code from a specification document, and can also produce a specification by scanning annotated Go source code. The project includes a static validation engine that checks documents against the schema and project-specific rules, and a specification transformation pipeline that resolves, flattens, and merges documents. The toolkit generates both client and server code from the same specification, ensuring consistency in request and response handling. It also produces a command

    Goapicode-generatorgo
    Ver en GitHub↗9,989
  • fullstorydev/grpcurlAvatar de fullstorydev

    fullstorydev/grpcurl

    12,691Ver en GitHub↗

    grpcurl is a command-line interface and client tool for invoking gRPC methods and inspecting service definitions. It serves as a server debugger and reflection client, allowing users to call remote procedures and verify server responses from the terminal using JSON or protobuf formats. The tool distinguishes itself through the ability to discover available services and methods dynamically via a server reflection service or by loading local protobuf schema files. It can extract service descriptions from a server for local use and print specific schema symbol definitions. It covers a broad ran

    Gogolanggrpcprotobuf
    Ver en GitHub↗12,691
Ver las 30 alternativas a Prototool→

Preguntas frecuentes

¿Qué hace uber/prototool?

Prototool es un kit de herramientas de desarrollo para Protocol Buffers que proporciona un conjunto de herramientas para linting, formateo y generación de código a partir de archivos de esquema. Funciona como un sistema para gestionar el ciclo de vida de las definiciones de Protocol Buffer a través de una interfaz de línea de comandos.

¿Cuáles son las características principales de uber/prototool?

Las características principales de uber/prototool son: Breaking Change Detectors, Protobuf Code Generators, Protobuf Formatters, Protobuf Linters, Protobuf Style Rules, API Specification Breaking Change Detectors, Protobuf Stub Generators, Multi-Language Code Generators.

¿Qué alternativas de código abierto existen para uber/prototool?

Las alternativas de código abierto para uber/prototool incluyen: diffplug/spotless — Spotless is a multi-language formatting orchestrator and Gradle plugin that automates code styling across various… grpc/grpc-rust — grpc-rust is a native gRPC framework for Rust designed for building high-performance remote procedure call clients and… go-swagger/go-swagger — go-swagger is a toolkit for working with Swagger/OpenAPI 2.0 specifications in Go. It generates server, client, and… fullstorydev/grpcurl — grpcurl is a command-line interface and client tool for invoking gRPC methods and inspecting service definitions. It… ktr0731/evans — Evans is a gRPC client and API explorer designed for testing, debugging, and automating remote procedure calls. It… thangchung/go-coffeeshop — go-coffeeshop is an event-driven microservices architecture designed to manage the end-to-end lifecycle of customer…