17 Repos
Automatic generation of static TypeScript interfaces from dynamic schema definitions.
Distinct from Static Type Checking: Focuses on the synthesis of new type definitions from a schema, rather than the process of checking existing ones.
Explore 17 awesome GitHub repositories matching software engineering & architecture · TypeScript Type Synthesis. Refine with filters or upvote what's useful.
This project is a type-safe GraphQL client generator and TypeScript schema compiler. It transforms GraphQL schema definitions and operation documents into static TypeScript types to ensure compile-time validation and data consistency between an API and a frontend application. The system functions as a customizable GraphQL plugin framework. It uses a plugin-based architecture and a custom pipeline to generate tailored API clients and request functions, eliminating the need for manual type declarations. The project covers GraphQL client automation, type generation, and workflow optimization. I
Converts dynamic GraphQL schema definitions into static TypeScript interfaces for compile-time type checking.
Old repo of Nuxt 3 framework, now on nuxt/nuxt
Generates TypeScript types and configuration automatically so the entire application benefits from static type checking.
This project is a customizable browser text editor and a schema-driven document framework designed for building React-based WYSIWYG content editors. It replaces standard text areas with a system that represents content as a structured data tree rather than flat HTML, allowing for precise manipulation and validation of documents. The framework serves as an extensible content management interface and a TypeScript UI component library. It enables the development of specialized authoring tools through a plugin system and the use of strongly typed building blocks to ensure consistency across docum
Defines strict schemas and type-safe data structures to ensure consistency across document updates.
wasm-bindgen is a bindings generator and interop layer designed to map data types and functions across the boundary between WebAssembly and JavaScript. It functions as a foreign function interface that synthesizes the necessary boilerplate to enable bidirectional communication between Rust and the browser runtime. The project generates glue code and wrappers that automate the conversion of complex types, allowing Rust functions to be exported as JavaScript modules and browser APIs to be imported into Rust. It uses procedural macros to define these interfaces and synthesizes bindings based on
Analyzes Rust type definitions to automatically synthesize memory layouts and conversion logic for JavaScript.
ts-reset is a TypeScript type enhancement library that overrides and augments the built-in type definitions for standard JavaScript APIs. Its core purpose is to replace unsafe any return types with stricter alternatives like unknown, forcing developers to explicitly validate data before using it. The library achieves this through global type augmentation and declaration merging, applying changes across the entire project without requiring per-file imports. The library differentiates itself by targeting specific pain points in everyday TypeScript usage. It relaxes type constraints on array
Improves default TypeScript types for common JavaScript APIs to catch more errors and require explicit validation.
openapi-typescript is an OpenAPI TypeScript type generator and schema transformer. It converts JSON or YAML OpenAPI specification files into static TypeScript type definitions to provide end-to-end API type safety. The tool functions as a static type generator that transforms external API definitions into interfaces and types. It focuses on zero-runtime type enforcement, ensuring that data consistency is maintained via the TypeScript type system without adding overhead to production bundles. The project covers API type safety and schema conversion, facilitating the validation of request bodi
Automatically synthesizes TypeScript interfaces and types directly from structured OpenAPI schema documents.
Arktype is a TypeScript runtime validation library and schema orchestrator. It synchronizes TypeScript types with runtime data validation, allowing users to define type-safe schemas that ensure unknown data adheres to specific structures during application execution. The project distinguishes itself by using set-theory type analysis to determine intersections and subtype compatibility, alongside JIT-compiled validation functions for optimized performance. It supports advanced type modeling through branded type constraints, recursive alias resolution, and the ability to generate runtime valida
Acts as a schema orchestrator managing recursive types, branded types, and complex type compositions with runtime enforcement.
This project is a Next.js SaaS starter kit and billing boilerplate designed for building subscription-based software services. It provides a pre-configured foundation that integrates a PostgreSQL database schema with Stripe to manage recurring billing, tiered pricing models, and customer payment portals. The implementation features a synchronization system that uses webhooks to mirror external product data and subscription states into a local relational database. It includes an authentication layer that links external identity providers to user accounts and manages secure session tracking. T
Automatically generates TypeScript definitions based on the database schema to maintain type safety.
wasm-pack is a build tool and workflow orchestrator for compiling Rust code to WebAssembly. It coordinates the compilation process and generates the JavaScript glue code required to execute Rust logic within web browsers and server-side runtimes. The tool manages binary optimization to reduce file sizes and improve execution speed. It also functions as a package manager, bundling compiled WebAssembly modules into archives compatible with JavaScript registries and bundlers. The project covers language interoperability through the automatic generation of TypeScript type definitions. It further
Automatically synthesizes TypeScript definition files from compiled WebAssembly module signatures to enable static type checking.
MobX State Tree is a structured, tree-based state management library for JavaScript applications that combines typed model definitions with reactive snapshots and patch-based change tracking. It provides a reactive state container with runtime and compile-time type safety, where application state is defined as a tree of typed models with collocated actions, computed views, and lifecycle hooks for predictable state mutations. The library is built around an action-centric mutation model that encapsulates all state changes within named functions that directly modify the tree, supported by genera
Derives TypeScript types from model definitions for auto-completion and static analysis without manual annotations.
Rushstack ist ein umfassendes Toolset für die Verwaltung groß angelegter TypeScript-Monorepos und bietet ein Framework für Build-Pipeline-Automatisierung, Abhängigkeitskoordination und statische Analyse. Es fungiert als inkrementeller Build-Orchestrator und Managementsystem, das darauf ausgelegt ist, Konsistenz und Performance über mehrere Pakete in einem geteilten Workspace hinweg zu wahren. Das System zeichnet sich durch ein Ausführungsmodell aus, das auf gerichteten azyklischen Graphen (DAGs) und inhalts-hash-basierter Inkrementalität basiert, was sicherstellt, dass nur betroffene Projekte neu gebaut werden. Es optimiert Entwicklungs-Workflows weiter durch Remote-Build-Artifact-Caching mit Integrationen für S3, Azure und HTTP und nutzt symlink-basiertes Workspace-Management für sofortige Sichtbarkeit lokaler Änderungen. Das Toolset deckt ein breites Spektrum an Funktionen ab, einschließlich automatisierter Release-Workflows, API-Vertragsanalyse und der Durchsetzung von Code-Qualität im Unternehmen durch standardisierte Linting-Profile. Es bietet zudem umfassende Unterstützung für Asset-Bundling, TypeScript-Transpilierung und die Generierung von Typdefinitionen aus JSON-Schemas und statischen Assets. Zusätzliche Aufgabenbereiche umfassen Lokalisierungsmanagement, die Generierung von Lizenzhinweisen und die Orchestrierung von Command-Line-Interfaces mit synchronisierter Prozessausgabe.
Automatically synthesizes TypeScript types from structured document schemas for configuration and asset safety.
stc is a TypeScript type checker implemented entirely in Rust, designed to validate type correctness in TypeScript source code with native performance and memory safety. It operates as a no-emitting type validator, meaning it checks types only and does not produce JavaScript output, reducing overhead compared to a full compiler. The checker is built around a zero-false-positive design, reporting only errors that are provably certain from the type system, prioritizing correctness over speculative warnings. The tool distinguishes itself through parallel file processing, analyzing source files c
Validates type correctness in TypeScript source code using a fast Rust-based implementation.
Generates TypeScript type definitions directly from the JSON schema to provide compile-time type safety for consumers.
react-native-config ist ein plattformübergreifender Manager für mobile Umgebungen und ein Tool für native Build-Konfigurationen. Es implementiert die Prinzipien der Twelve-Factor App, indem es umgebungsspezifische Einstellungen vom Anwendungscode trennt. Das Projekt bietet einen Mechanismus, um Umgebungsvariablen während des Kompilierungsprozesses direkt in native Projektdateien und Build-Einstellungen einzufügen. Es fungiert zudem als typsicherer Konfigurations-Loader, der TypeScript-Definitionen für Umgebungsvariablen generiert, um Autovervollständigung und Sicherheit zu gewährleisten. Das Tool verwaltet Multi-Umgebungs-Konfigurationen, indem es spezifische Variablen basierend auf aktiven Build-Targets oder Deployment-Stufen aus Dateien lädt. Es überbrückt diese Werte vom nativen Plattformspeicher zur JavaScript-Runtime.
Generates TypeScript type definitions automatically from environment configuration files for static type safety.
ts-essentials ist ein umfassendes Toolkit mit Utility-Types und Bibliotheken für TypeScript, das erweiterte Primitive für rekursive strukturelle Transformationen, Laufzeit-Assertions und Type-Guards bereitstellt. Es dient als Utility-Bibliothek zur Durchführung komplexer Type-Level-Programmierung, um eine stärkere Typsicherheit zu gewährleisten und Boilerplate-Code zu reduzieren. Das Projekt zeichnet sich durch ein spezialisiertes Set an Tools für die tiefe Objektmanipulation aus, wie etwa das rekursive Anwenden von Read-only- oder Optional-Modifikatoren über verschachtelte Hierarchien hinweg. Zudem bietet es ein dediziertes Set an strikten Type-Constraints, um sicherzustellen, dass Datenstrukturen spezifisch den JSON-Spezifikationen entsprechen. Das Toolkit deckt ein breites Spektrum an Funktionen ab, einschließlich Typanalyse für die Metadatenextraktion, Union- und Tuple-Manipulation sowie Validierung der strukturellen Identität. Es enthält zudem Laufzeit-Verifizierungs-Utilities, um die Vollständigkeit von Cases in der bedingten Logik zu erzwingen und Typ-Constraints während der Ausführung zu validieren.
Provides a toolkit for altering property mutability, casing, and optionality across nested object structures.
openapi-ts is a tool and orchestrator used to convert OpenAPI specifications into type-safe TypeScript SDKs and HTTP client implementations. It automatically generates typed interfaces and request functions from API definitions to ensure consistency between the server and the client. The project employs a transport-agnostic client interface, decoupling high-level API calls from the underlying network library. It uses a plugin-based generation pipeline and a custom plugin architecture to allow for the customization of output types and validation schemas. The system provides capabilities for n
Automatically synthesizes static TypeScript interfaces from JSON schema definitions.
Schema-dts is a type-safe library providing TypeScript interfaces for modeling structured data and interconnected graph relationships. It serves as a framework for defining and enforcing strict property requirements for JSON-LD objects, ensuring that metadata generated for web applications and search engines adheres to established vocabulary standards. The project distinguishes itself by providing a comprehensive set of definitions for the Schema.org vocabulary, enabling developers to build complex, machine-readable data graphs with compile-time validation. It supports the composition of mult
Applies rigorous compile-time checks to complex data structures to prevent runtime errors when handling interconnected graph information.