14 Repos
Mechanisms for verifying an object's class or type at runtime to ensure behavioral correctness.
Distinct from Object Shape Validation: Existing candidates focus on static type definitions or schema validation, not runtime class checks
Explore 14 awesome GitHub repositories matching programming languages & runtimes · Runtime Type Validation. Refine with filters or upvote what's useful.
fp-ts is a TypeScript library that brings pure functional programming patterns to the language through algebraic data types, type class abstractions, and composable combinators. It provides foundational data types like Option for optional values, Either for typed error handling, and Task for lazy asynchronous computations, all designed to make invalid states unrepresentable and side effects explicit. The library is built on category theory concepts, offering type classes such as Functor, Applicative, Monad, Semigroup, and Monoid with lawful instances for common data structures. The library di
Applies pure functional patterns with immutable data types and type classes for composable TypeScript code.
Torch7 is a scientific computing environment and tensor computation library used for deep learning research and numerical analysis. It functions as a Lua-based framework for training neural networks and learning agents, providing a toolkit for implementing architectures and training through reinforcement learning algorithms. The project is distinguished by its tight integration with C, utilizing a binding layer to map high-level scripting to low-level C structures for direct memory access. It supports hardware-accelerated computation by offloading linear algebra and convolution operations to
Checks if an object belongs to a specific class by comparing its type specification at runtime.
Valibot is a modular, type-safe schema library for validating and parsing structural data in TypeScript environments.
Verifies that unknown runtime data adheres to predefined schemas to ensure type safety.
Apache Beam is a distributed data pipeline framework and unified data processing model designed to handle both bounded batch data and unbounded real-time streams. It provides a system for building scalable, data-parallel workflows that operate across compute clusters using a single programming model. The framework utilizes a cross-runner pipeline abstraction that decouples the data processing logic from the underlying execution backend, allowing the same pipeline to run on different distributed compute engines. It supports multi-language pipeline development by translating high-level code fro
Utilizes type hints during construction and runtime to detect bugs and ensure data type correctness.
Expr is a high-performance expression evaluation engine and language for Go applications. It functions as a dynamic rule engine that parses and executes custom logic and data validations at runtime without requiring the application to be recompiled. The system utilizes a sandboxed logic executor to run expressions without side effects. It ensures program termination by employing instruction-level loop detection to prevent infinite loops and isolates the evaluation process from the host system. The engine employs a bytecode-based virtual machine and abstract syntax tree analysis to achieve ex
Verifies that dynamic expressions adhere to specific data types during execution to ensure behavioral correctness.
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
Provides a runtime validation library that synchronizes TypeScript types with data validation during application execution.
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
Checks property assignments against defined runtime types, preventing accidental data type mismatches.
io-ts is a TypeScript runtime validation library that provides a composable codec system for decoding and encoding data at the boundaries of an application. It defines data schemas using structural types, where the shape of data determines its validity rather than nominal names, and produces runtime type guards from those definitions for efficient validation checks. The library is built around bidirectional codec mappings that combine decoding, encoding, and type checking into single reusable units. It supports a composable decoder pipeline where small validation steps can be chained together
Validates and transforms external data into typed structures using composable codecs at runtime.
Typia is a compile-time code generator that transforms TypeScript type annotations into runtime validation, serialization, and schema functions without requiring decorators or separate schema files. It generates optimized validation and serialization code during TypeScript compilation, producing dedicated functions for each type that eliminate runtime schema objects for faster execution. The project extends this core capability into several integrated areas. It generates fully typed client SDKs from NestJS controller source code, keeping server and client types synchronized automatically. It
Transforms TypeScript type annotations into runtime validation, serialization, and parsing functions without decorators or separate schema files.
Typeshed ist eine Sammlung statischer Typdefinitionen und Stubs für die Python-Standardbibliothek und Drittanbieter-Pakete. Es dient als standardisierte Ressource für statische Analysetools und integrierte Entwicklungsumgebungen (IDEs), um die Korrektheit von Code zu validieren und typbasierte Code-Vervollständigung bereitzustellen, ohne den ursprünglichen Quellcode der Bibliotheken zu verändern. Das Projekt konzentriert sich auf die Erstellung und Wartung externer Type-Hint-Dateien, die Typannotationen von der Laufzeitimplementierung trennen. Es nutzt ein System zur Versionierung und zum Mapping dieser Stubs auf spezifische Versionen von Laufzeitpaketen, um die Kompatibilität zu wahren. Das Repository enthält eine Validierungssuite, um die Genauigkeit dieser Definitionen sicherzustellen. Dies umfasst die Validierung von Laufzeit zu Stub, um Diskrepanzen zwischen deklarierten und tatsächlichen Typen zu identifizieren, die Überprüfung der Verzeichnisstruktur sowie Regressionstests, um die Wiedereinführung bekannter Typ-Checking-Fehler zu verhindern.
Ships a validation system that compares static type definitions against live Python objects to identify mismatches.
prop-types ist ein JavaScript-Objekt-Validator und Laufzeit-Typ-Checker. Es dient als Entwicklungstool zur Überprüfung, ob Objekteigenschaften vordefinierten Spezifikationen entsprechen, und wird hauptsächlich verwendet, um sicherzustellen, dass Daten, die an React-Komponenten übergeben werden, mit den erwarteten Typen übereinstimmen. Das Dienstprogramm erkennt Dateninkonsistenzen, indem es Warnungen in die Konsole protokolliert, wenn Diskrepanzen auftreten, anstatt Exceptions auszulösen. Es verwendet einen zustandsbehafteten Warnungs-Cache, um doppelte Protokolle zu verhindern, und beschränkt die Validierungslogik auf Nicht-Produktionsumgebungen, um Performance-Einbußen in veröffentlichten Builds zu vermeiden. Das Projekt deckt die Datenvalidierung durch rekursive Objektdurchquerung und spezifikationsbasiertes Matching ab. Es bietet zudem Entwickler-Tools zum Zurücksetzen der Warnungshistorie während Testzyklen.
Verifies object property types at runtime to ensure data aligns with predefined specifications.
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.
Verifies that a runtime value matches a specific expected type to ensure behavioral correctness.
Structs is a reflection utility and type inspection framework for Go. It provides tools for inspecting, converting, and validating data structures by extracting field names, tags, and values from Go objects. The library specializes in transforming Go structs into generic maps or slices for serialization and data manipulation. It utilizes tag-driven mapping to determine custom keys and exclusion rules during these transformations. The project covers broader capabilities including metadata extraction, type validation to verify if variables are structs or pointers, and initialization verificati
Ensures type safety by confirming an object is a struct or pointer before applying reflection logic.
Locutus is a multi-language utility library and polyfill collection written in TypeScript. It provides a comprehensive set of implementations for standard library functions from various programming languages, enabling developers to use familiar semantics and behaviors across different technical environments. The library functions as a cross-language standard library, porting core logic and utilities from diverse languages into a type-safe TypeScript toolset. It focuses on maintaining consistent behavior through a polyfill-based design that replicates the original functionality of these foreig
Ships a suite of utilities for complex sequence iterations, statistical calculations, and precision mathematics.