5 个仓库
Engines that produce type-safe data models and converters for a variety of target programming languages.
Distinct from Multi-Language Client Generation: Distinct from Multi-Language Client Generation: generates the data models and serializers themselves, not just the API client wrapper.
Explore 5 awesome GitHub repositories matching web development · Multi-Language Model Generators. Refine with filters or upvote what's useful.
Quicktype is a multi-language serialization tool and type generator. It converts JSON samples, JSON Schema definitions, and GraphQL schemas into strongly typed data structures and serialization logic across multiple programming languages. The system automates the data serialization workflow by generating boilerplate code to parse and serialize data. It transforms structured input definitions into executable code, providing the necessary encoders and decoders to move data between raw formats and typed objects.
Acts as an engine that produces type-safe data models and serializers for a variety of target programming languages.
Quicktype is a multi-language model generation engine that converts JSON and GraphQL schemas into type-safe models and serialization code. It functions as a JSON to type generator and a GraphQL type generator, producing strongly typed classes and interfaces across a wide array of target programming languages. The system derives formal schemas from sample data and transforms these definitions into native language objects. This enables the synchronization of shared data models across diverse tech stacks and the development of type-safe interfaces for consuming external APIs. The engine utilize
Produces type-safe models and converters for a wide array of target programming languages.
JSONExport 是一个多语言代码生成器和 JSON 模式转换器,将 JSON 数据结构转换为强类型源代码类。它作为 API 响应映射器,将 JSON 对象转换为数据传输对象(DTO),以自动化模型类的创建。 该工具专注于多语言模型合成,允许用户使用单一 JSON 输入定义跨不同编程语言的数据模型。它生成类样板代码,包括构造函数和访问器,并提供预览流水线,以便在保存结果源代码之前进行审查。 该项目通过基于模板的方法涵盖数据模型实现和源代码样板生成,将 JSON 数据类型映射到特定的语言语法。
Produces type-safe data models across a variety of target programming languages from a single JSON input.
Fury 是一个多语言二进制序列化框架,旨在编码领域对象和复杂图,以促进跨语言数据交换。它包括一个接口定义语言(IDL)编译器,可将模式定义转换为多种语言中的惯用原生类型和序列化样板代码。 该框架通过零拷贝二进制读取器脱颖而出,该读取器允许在不反序列化整个对象的情况下访问特定字段,以及一个保留循环引用和引用完整性的对象图序列化器。它还具有一个数据转换器,可将基于行的二进制数据转换为用于分析工作负载的列式 Apache Arrow 格式。 该框架涵盖了广泛的功能领域,包括用于前向和后向兼容性的元数据驱动模式演进、用于消除运行时反射的构建时 AOT 编译过程,以及通过基于白名单的类型验证进行的安全反序列化。它还为通过 gRPC 进行的高性能远程过程调用提供了集成。
Produces type-safe data models and serializers for a variety of target programming languages from shared schemas.
Fory is a cross-language serialization framework and binary data serializer designed to convert complex object graphs into a compact binary format for high-performance data exchange. It includes an IDL-based schema compiler to transform interface definition language files into type-safe native data models and a schema evolution manager to maintain forward and backward compatibility. The project features a zero-copy data access layer that allows reading specific fields from binary rows without deserializing the entire object. It supports dual-mode serialization, enabling a toggle between a por
Generates native data structures and type-safe models across multiple languages from a single shared contract.