awesome-repositories.com
博客
awesome-repositories.com

通过 AI 驱动的搜索,发现最优秀的开源仓库。

探索精选搜索开源替代品自托管软件博客网站地图
项目关于排名机制媒体报道MCP 服务器
法律隐私政策服务条款
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·

9 个仓库

Awesome GitHub RepositoriesInterface Definition Code Generation

Tools for generating client stubs and server skeletons from IDL files.

Distinguishing note: Focuses on the automation of boilerplate code.

Explore 9 awesome GitHub repositories matching development tools & productivity · Interface Definition Code Generation. Refine with filters or upvote what's useful.

Awesome Interface Definition Code Generation GitHub Repositories

用 AI 发现最棒的仓库。我们将通过 AI 为您搜索最匹配的仓库。
  • grpc/grpcgrpc 的头像

    grpc/grpc

    44,891在 GitHub 上查看↗

    gRPC is a language-agnostic remote procedure call framework designed for high-performance communication between distributed services. It utilizes a structured interface definition language to generate consistent client stubs and server skeletons, enabling applications to invoke methods on remote servers as if they were local objects. By leveraging the HTTP/2 transport layer, the framework supports efficient binary serialization and multiplexed data exchange across diverse programming environments. The framework distinguishes itself through its support for flexible communication patterns, incl

    Automatically generates language-specific client stubs and server skeletons from interface definition files.

    C++
    在 GitHub 上查看↗44,891
  • grpc/grpc-rustgrpc 的头像

    grpc/grpc-rust

    12,338在 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

    Automatically generates client stubs and server skeletons from protobuf interface definition files.

    Rustasyncgrpcproto
    在 GitHub 上查看↗12,338
  • nasa/fprimenasa 的头像

    nasa/fprime

    10,766在 GitHub 上查看↗

    F Prime 是一个基于组件的框架,专为嵌入式和航天软件的开发与部署而设计。它提供了一种模块化架构,将软件逻辑与通信接口解耦,允许开发者通过领域特定建模语言定义系统结构。这种基于模型的方法支持自动化代码生成,在确保复杂系统拓扑一致性的同时,维护了软件模块之间严格的接口契约。 该框架的特色在于其集成的构建系统和地面数据操作套件。它实现了嵌入式软件全生命周期的自动化,从交叉编译和依赖管理到遥测与命令接口的生成。通过为机载飞行软件和地面监控提供统一的环境,它促进了跨不同硬件平台的分布式嵌入式系统的无缝集成、测试及指挥控制。 除了核心架构外,该项目还包含用于系统可观测性的综合工具,包括实时遥测可视化、事件日志记录和诊断追踪。它支持从裸机环境到实时操作系统的多种部署场景,并提供了内存管理、状态驱动行为建模和异步任务执行机制。 该项目以 C++ 仓库形式维护,并提供详尽的文档和支持跨平台开发的构建系统。

    Automates the generation of source code and interface definitions from architectural models to ensure system consistency.

    C++componentscppembedded
    在 GitHub 上查看↗10,766
  • googleapis/googleapisgoogleapis 的头像

    googleapis/googleapis

    8,439在 GitHub 上查看↗

    This project is a centralized API specification registry and governance framework. It serves as a source of truth for structured API schemas, gRPC definitions, and data models used to maintain consistency across a large ecosystem of services. The system functions as a multi-language client generator, transforming standardized interface definitions into executable source code and language-specific libraries. This process ensures that client libraries and technical documentation remain synchronized by deriving them directly from the original interface definitions. The project also covers the m

    Generates client stubs and server skeletons from IDL files using automated build plugins.

    Starlarkprotocol-buffers
    在 GitHub 上查看↗8,439
  • cloudwego/hertzcloudwego 的头像

    cloudwego/hertz

    7,279在 GitHub 上查看↗

    Hertz is a high-performance Go HTTP framework designed for building scalable microservices, RESTful APIs, and AI applications. It functions as a high-performance web server and a communication framework for microservices, utilizing non-blocking I/O and zero-copy memory management to handle high-concurrency traffic. The project distinguishes itself through a microservices communication toolkit that supports high-efficiency remote procedure calls via gRPC and Thrift protocols. It implements an asynchronous middleware engine based on an onion model, allowing for a pluggable request-response pipe

    Generates server skeletons and client stubs from Thrift or Protobuf IDL files to ensure type safety.

    Gogohttpmicroservices
    在 GitHub 上查看↗7,279
  • swig/swigswig 的头像

    swig/swig

    6,294在 GitHub 上查看↗

    SWIG is a tool that generates wrapper code to expose C and C++ libraries to a wide range of higher-level programming languages. It reads annotated C/C++ header files and produces language-specific bindings from a single interface definition, supporting languages such as Python, Java, Ruby, C#, Perl, and many others. The generated wrapper code is free from the project's GPL license, allowing users to distribute it under their own terms. The tool handles modern C++ features including templates, namespaces, smart pointers, and constructs up to C++20 through specialized parsing and code generatio

    Generates language-specific bindings from a single annotated C/C++ interface definition.

    SWIG
    在 GitHub 上查看↗6,294
  • apache/dubbo-goapache 的头像

    apache/dubbo-go

    4,938在 GitHub 上查看↗

    Apache Dubbo Go 是 Apache Dubbo 框架的 Go 语言实现,专为构建高性能微服务而设计。它作为一个跨语言 RPC 框架和微服务通信层,支持不同编程语言编写的服务之间进行远程过程调用。 该框架充当服务治理工具集和服务网格代理,允许数据平面以代理或无代理模式连接外部控制平面。它特别提供了一个兼容层,通过语言无关的定义和标准化的数据编码,促进 Go 和 Java 服务之间的通信。 该系统涵盖了广泛的分布式功能,包括动态服务发现、基于策略的负载均衡,以及通过熔断器和限流器进行的流量管理。它通过分布式请求追踪和性能指标实现可观测性,同时通过传输层加密和基于身份的访问控制确保安全性。 开发者生产力通过用于应用引导的命令行界面和从接口定义自动生成 RPC 存根的功能得到支持。

    Produces client and server stubs from shared interface definitions to automate the implementation of service contracts.

    Gogohttp2microservices
    在 GitHub 上查看↗4,938
  • square/kotlinpoetsquare 的头像

    square/kotlinpoet

    4,141在 GitHub 上查看↗

    KotlinPoet 是一个基于 Java 的 API,用于以编程方式创建和格式化 Kotlin 源文件。它作为一个源代码生成器和类型系统映射器,通过语言元素的类型安全模型提供框架,以构建 Kotlin 代码结构并自动化样板代码的生产。 该项目利用流式构建器模式逐步构建语言元素,并维护一个将逻辑结构与最终文本格式分离的内部对象模型表示。它通过基于缩进的格式化和感知关键字的名称转义来处理源代码生成的复杂性,以确保输出有效。 该库涵盖了广泛声明的生成,包括类、接口、函数、属性和伴生对象。它包含用于管理复杂参数化类型、枚举类和类型别名的工具,以及用于嵌入字面量和构建控制流块的工具。自动导入管理和声明引用已集成,以通过限定名称解析成员。 KotlinPoet 提供了将反射数据和符号转换为源代码表示的能力,并支持导出文件规范以供注解处理工具使用。

    Supports the programmatic creation of interface declarations to define common APIs.

    Kotlincode-generationjavapoetkotlin
    在 GitHub 上查看↗4,141
  • google/tarpcgoogle 的头像

    google/tarpc

    3,713在 GitHub 上查看↗

    tarpc is a remote procedure call framework for Rust that generates server traits and client stubs for network communication. It provides an asynchronous service interface that allows remote functions to be called as if they were local asynchronous tasks. The framework utilizes a serialized transport layer to move request and response data via TCP sockets, Unix domain sockets, or in-process channels. It includes a request lifecycle interceptor for injecting custom logic to handle authorization, throttling, and load balancing, as well as a distributed request telemetry system that attaches dead

    Generates client stubs and server skeletons from service specifications to reduce manual implementation.

    Rust
    在 GitHub 上查看↗3,713
  1. Home
  2. Development Tools & Productivity
  3. Interface Definition Code Generation