5 repository-uri
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 este un generator de cod multi-limbaj și un convertor de scheme JSON care transformă structurile de date JSON în clase de cod sursă puternic tipizate. Servește ca mapper de răspuns API, convertind obiectele JSON în obiecte de transfer de date (DTO) pentru a automatiza crearea claselor de model. Instrumentul se specializează în sinteza modelelor multi-limbaj, permițând utilizatorilor să definească modele de date în diferite limbaje de programare folosind un singur input JSON. Generează boilerplate de clasă, inclusiv constructori și accesorii, și oferă un pipeline de previzualizare pentru a revizui codul sursă rezultat înainte de a fi salvat. Proiectul acoperă implementarea modelului de date și generarea de boilerplate de cod sursă printr-o abordare bazată pe șabloane care mapează tipurile de date JSON la sintaxa specifică a limbajului.
Produces type-safe data models across a variety of target programming languages from a single JSON input.
Fury este un framework de serializare binară multi-limbaj conceput pentru encodarea obiectelor de domeniu și a grafurilor complexe, pentru a facilita schimbul de date între limbaje. Include un compilator de limbaj de definire a interfețelor (IDL) care traduce definițiile de schemă în tipuri native idiomatice și boilerplate de serializare în mai multe limbaje. Proiectul se distinge printr-un cititor binar zero-copy care permite accesarea unor câmpuri specifice fără a deserializa întregul obiect, precum și un serializator de grafuri de obiecte care păstrează referințele circulare și integritatea referențială. De asemenea, dispune de un convertor de date care transformă datele binare bazate pe rânduri în formate coloanare Apache Arrow pentru sarcini analitice. Framework-ul acoperă domenii largi de capabilități, inclusiv evoluția schemei bazată pe metadate pentru compatibilitate înainte și înapoi, un proces de compilare AOT (Ahead-Of-Time) pentru a elimina reflexia la runtime și deserializarea securizată prin validarea tipurilor bazată pe whitelist. Oferă, de asemenea, integrare pentru apeluri de proceduri la distanță de înaltă performanță prin 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.