43 مستودعات
Enforces specific property requirements on objects to ensure they contain the expected data fields and types.
Distinct from Data Type Validation: Focuses on static analysis of object properties rather than runtime type validation.
Explore 43 awesome GitHub repositories matching software engineering & architecture · Object Shape Validation. Refine with filters or upvote what's useful.
Yup is a JavaScript schema validation library used to define data shapes and validate runtime values. It functions as an object schema validator and a data coercion engine, allowing developers to transform raw input values into desired types before performing validation checks. The library is distinguished by its support for dynamic schema validation, where rules can be adjusted at runtime based on sibling field values or external context. It also enables recursive data structuring for polymorphic fields and provides a system for extracting static TypeScript interfaces from runtime schema def
Enforces specific property requirements on objects to ensure they contain expected data fields and types.
This project is a comprehensive educational resource and programming guide for the TypeScript language. It serves as a manual for the type system and a reference for the language's core syntax, focusing on writing type-safe code and building scalable applications. The content provides detailed instruction on the TypeScript type system, covering interfaces, generics, and structural typing. It further acts as a compiler reference, analyzing how source code is transformed into an abstract syntax tree through scanning and parsing. The guide also covers software architecture design, detailing pro
Instructs on verifying that objects match required member shapes to ensure compatibility between data structures.
NetBox is a network infrastructure source of truth, acting as a centralized database for modeling and documenting the intended state of network devices, IP addresses, and cabling. It functions as a data center infrastructure management tool, an IP address management system, and a network automation platform. The system provides a programmable interface and a validated data model designed to drive external network configuration and provisioning tools. It enables the maintenance of records for network circuits, devices, and logical connections with full change auditing. Capabilities include ne
Enforces data integrity rules and property requirements on infrastructure objects to prevent configuration errors.
type-fest is a library of reusable utility types for performing complex transformations and validations on objects, arrays, strings, and numeric ranges in TypeScript. It provides a collection of type definitions designed to handle advanced structural changes and constraints. The project distinguishes itself by offering specialized logic for string literal processing, such as casing transformations and pattern-based modifications, and type-level arithmetic for calculating numeric ranges and absolute values. It also includes utilities for enforcing deep immutability, ensuring union mutual exclu
Determines if a type contains optional properties to allow conditional logic based on field presence.
This project is a static analysis engine and type checker designed for PHP codebases. It evaluates source code structure and type annotations to identify potential bugs, type mismatches, and logic errors without executing the application. By parsing code into an abstract syntax tree and applying a rule-based validation framework, it enforces code quality and safety standards across a project. What distinguishes this tool is its sophisticated type inference engine, which models dynamic language features, magic methods, and conditional types to maintain accuracy even in unconventional code. It
Enforces specific property requirements on objects to ensure they contain the expected data fields and types.
class-validator is a TypeScript class validation library that uses decorators to define constraints and rules for object properties. It functions as a decorator-based schema validator that ensures data integrity and structural correctness through a combination of synchronous checks and promise-based asynchronous rules. The library provides a recursive validation system for checking complex data hierarchies, including nested classes and individual elements within collections. It includes an object property whitelist utility capable of stripping undocumented properties or blocking unknown field
Implements a recursive validation system for verifying complex data hierarchies, including nested classes and collections.
FluentValidation is a .NET validation library used to define strongly-typed validation rules for objects. It utilizes a fluent interface API and lambda expressions to ensure data integrity for classes and properties within the .NET type system. The library separates validation logic from business entities to keep domain models focused on core functionality. This approach enables the enforcement of business logic and the sanitization of input data or API payloads through a sequence of logic checks. The system supports complex validation surface areas, including the ability to nest validators
Provides recursive validation of complex object graphs to ensure structural integrity across nested class hierarchies.
Bogus is a fake data generator for .NET applications, including C#, F#, and VB.NET. It provides a deterministic mock data engine and an object configuration mapper to produce realistic profiles, addresses, and financial records. The library differentiates itself through a localization data provider that generates region-specific identifiers across various international languages and locales. It ensures reproducibility across executions by using seed values to control the sequence of generated data. The project covers wide-ranging data synthesis capabilities, including the generation of netwo
Ensures all properties of a target class have an assigned generation rule to prevent missing mock data.
async-validator هي مكتبة JavaScript للتحقق من المخططات ومحرك للتحقق من البيانات غير المتزامن. تتحقق من هياكل الكائنات المعقدة والمصفوفات المتداخلة من خلال تطبيق قواعد متكررة وتنفيذ غير حظر (non-blocking) يعتمد على الوعود (promises) لضمان سلامة البيانات. تعمل المكتبة كمدقق لقيود الكائنات وخط أنابيب لتحويل البيانات. تسمح بتنقية، وإكراه، وتنسيق قيم المدخلات من خلال سلسلة من الدوال التي تعمل قبل وبعد عملية التحقق الأساسية. يغطي المحرك مجموعة من القدرات بما في ذلك التحقق المتداخل المتكرر، وفرض قيود المخطط القياسية، وتكامل منطق الأعمال المخصص عبر دوال تحقق مصممة خصيصاً. كما توفر أدوات لتخصيص رسائل الخطأ والترجمة من خلال سلاسل ثابتة أو دوال ديناميكية.
Recursively traverses nested object hierarchies and arrays to enforce structural correctness across deep data structures.
Valibot is a modular, type-safe schema library for validating and parsing structural data in TypeScript environments.
Deno Valide ensures an input object contains only specified keys and rejects unknown properties.
Chai is an assertion library for Node.js and browser-based JavaScript applications. It functions as both a behavior-driven development and test-driven development framework, providing a system to verify code outputs, application state, and general logic. The project is an extensible validation engine that uses a plugin-based system to allow the registration of custom assertions and specialized data checks. It supports multiple modular assertion styles to accommodate different validation philosophies. The library covers a broad range of data validation capabilities, including the inspection o
Ensures an object contains a specific set of property keys or a minimum required list of identifiers.
Atlas is a SQL database schema management tool and database infrastructure as code framework. It provides a declarative database migration engine that computes the difference between a desired schema state and the current database state to automatically generate the necessary SQL for transitions. The project distinguishes itself through a comprehensive suite of analysis and visualization tools, including a database schema linter that detects destructive changes and data loss risks. It also features a SQL schema visualization tool capable of generating entity-relationship diagrams from extract
Allows specific database objects to be excluded from the schema diff engine to prevent unwanted modifications.
Sui is a blockchain platform featuring an object-centric state model and resource-oriented smart contracts. It utilizes parallel transaction execution to increase network throughput and supports programmable transaction blocks that bundle multiple operations into single atomic units. The platform distinguishes itself with a capability-based access control system and zero-knowledge login mechanisms, enabling users to authenticate via identity providers without seed phrases. It also implements deterministic object addressing to allow predictable state lookups and supports the creation of soulbo
Ensures a one-to-one mapping between parent-key pairs and object addresses for registries.
ts-toolbelt is a collection of specialized utilities for manipulating and validating TypeScript types. It provides a toolkit for performing complex transformations on objects, unions, and functions to enforce strict data consistency at compile time. The library features dedicated transformers for function types, including utilities for currying, composition, and signature extraction. It also includes an object type manipulator for deep merging, patching, and reshaping complex structures. The capability surface extends to literal string processing, type-level arithmetic, and tuple operations.
A utility that ensures that at least one specific key from a provided set is present in an object.
Superstruct is a JavaScript and TypeScript data validation library used to verify that data structures match defined shapes and types. It functions as a composable schema builder and a TypeScript schema validator, ensuring that runtime data checks remain synchronized with static type definitions. The library features a data coercion engine that transforms input values or injects default values before the validation process is executed. It enables the creation of complex validation rules by nesting, merging, or omitting properties from existing structures. Its capabilities cover the validatio
Enables building complex validators by picking, omitting, or merging properties from existing structural definitions.
Hamcrest PHP is a declarative assertion framework and matcher library used for unit testing in PHP. It provides a set of flexible matchers to verify object states, data types, and collection contents. The library includes specialized tools for XML verification using XPath expressions to analyze document structures and element content. It also allows for the creation of complex validation rules by combining multiple independent matchers through logical operators. The framework covers a broad range of validation primitives, including string content inspection, numeric comparison, and object pr
Checks class inheritance, object properties, and the contents of traversable collections or arrays.
TypeBox is a JSON schema generator and TypeScript data validator. It functions as a type builder that creates compliant JSON schema definitions while providing a mechanism for synchronizing runtime validation logic with compile-time types. The project allows for the automatic derivation of static TypeScript interfaces from schema definitions to eliminate redundant type declarations. It converts complex type constructs into schema fragments and resolves static types to maintain consistency between data shapes and code. The system covers runtime type checking and data validation through the us
Provides the ability to construct complex JSON schemas by combining and merging reusable primitives.
Red is a programming language with a native compiler that translates high-level source code into standalone executables for Windows, macOS, and Linux without external runtime dependencies. It combines a cross-platform GUI development framework that renders native operating system widgets from a single codebase with a reactive data binding system that automatically synchronizes UI state with data sources. The language also includes an embedded DSL and parsing engine based on PEG grammar rules for defining and processing domain-specific languages within the language itself. The project distingu
Links object fields to data sources so changes propagate automatically between model and display.
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
Validates parsed objects against TypeScript types, rejecting extra properties in strict mode.
HotChocolate is a GraphQL server implementation for .NET that handles queries, mutations, and subscriptions over HTTP. It provides code-first schema generation directly from C# classes and attributes, keeping the schema and business logic in sync without manual type definitions. The project also includes a GraphQL gateway that composes multiple GraphQL and REST endpoints into a single unified schema, along with a GraphQL IDE for exploring, testing, and debugging GraphQL APIs interactively. The project distinguishes itself through its comprehensive tooling ecosystem, which includes a GraphQL c
Merges multiple independent GraphQL services into a unified schema exposed through a single endpoint.