# quicktype/quicktype

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/quicktype-quicktype).**

13,761 stars · 1,182 forks · TypeScript · Apache-2.0

## Links

- GitHub: https://github.com/quicktype/quicktype
- Homepage: https://app.quicktype.io
- awesome-repositories: https://awesome-repositories.com/repository/quicktype-quicktype.md

## Description

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 utilizes a transformation pipeline that maps source schemas to an intermediate representation before applying pluggable language renderers. This architecture supports custom output language definitions and provides a programmatic API for automating type conversion within build or deployment pipelines.

## Tags

### Web Development

- [Model and Serializer Generators](https://awesome-repositories.com/f/web-development/api-client-generators/type-safe-client-generators/model-and-serializer-generators.md) — Creates strongly typed data models and serializers from schemas or sample data. ([source](https://github.com/quicktype/quicktype#readme))
- [Multi-Language Client Generation](https://awesome-repositories.com/f/web-development/api-client-generators/multi-language-client-generation.md) — Translates data definitions into multiple target languages to synchronize models across diverse tech stacks.
- [Multi-Language Model Generators](https://awesome-repositories.com/f/web-development/api-client-generators/multi-language-model-generators.md) — Produces type-safe models and converters for a wide array of target programming languages.

### Data & Databases

- [GraphQL Model Generators](https://awesome-repositories.com/f/data-databases/data-type-definitions/schema-type-synchronization/graphql-type-inference/graphql-model-generators.md) — Transforms GraphQL schemas into type-safe classes and interfaces.
- [JSON Schema Modeling](https://awesome-repositories.com/f/data-databases/json-schema-modeling.md) — Automates the creation of JSON schemas from sample data to serve as stable contracts.
- [Sample-Based Schema Derivation](https://awesome-repositories.com/f/data-databases/json-schema-modeling/sample-based-schema-derivation.md) — Derives formal JSON schemas from sample data to enable consistent code generation. ([source](https://github.com/quicktype/quicktype#readme))
- [Schema Compilers](https://awesome-repositories.com/f/data-databases/schema-validation-libraries/schema-compilers.md) — Compiles derived schemas into executable serialization code for various languages.
- [Pluggable Generator Architectures](https://awesome-repositories.com/f/data-databases/data-compression-algorithms/pluggable-architectures/pluggable-generator-architectures.md) — Employs a pluggable architecture to support various language-specific code generators.

### Development Tools & Productivity

- [Schema-Driven Code Generators](https://awesome-repositories.com/f/development-tools-productivity/project-scaffolding-config-code-generation/code-generation/schema-driven-code-generators.md) — Generates type-safe source code by injecting intermediate models into language-specific templates.
- [Type Generators](https://awesome-repositories.com/f/development-tools-productivity/type-generators.md) — Converts JSON data or schemas into strongly typed data models across multiple languages.
- [Build-Pipeline Type Automation](https://awesome-repositories.com/f/development-tools-productivity/build-pipeline-type-automation.md) — Offers a programmatic API for automating type conversion within build and deployment pipelines.

### Networking & Communication

- [API Clients](https://awesome-repositories.com/f/networking-communication/api-clients.md) — Enables the creation of type-safe interfaces for consuming external APIs.

### Software Engineering & Architecture

- [Schema-Driven Type Inference](https://awesome-repositories.com/f/software-engineering-architecture/typescript-type-definitions/schema-driven-type-inference.md) — Automatically derives formal structural constraints and types from sample JSON data.
- [Intermediate Representations](https://awesome-repositories.com/f/software-engineering-architecture/data-formats/intermediate-representations.md) — Uses a language-neutral intermediate representation to bridge source schemas and target language code.
- [Language Support Definitions](https://awesome-repositories.com/f/software-engineering-architecture/integration-extensibility/extensibility/plugin-architectures/domain-specific/language-support-definitions.md) — Provides mechanisms to define support for new target programming languages. ([source](https://github.com/quicktype/quicktype#readme))

### Programming Languages & Runtimes

- [Schema Transformation Pipelines](https://awesome-repositories.com/f/programming-languages-runtimes/multi-pass-compiler-pipelines/schema-transformation-pipelines.md) — Implements a multi-pass pipeline for analysis, normalization, and rendering of schemas across languages.

### Part of an Awesome List

- [Code Generators](https://awesome-repositories.com/f/awesome-lists/devtools/code-generators.md) — Generates JSON codecs from data structures.
