66 个仓库
Processes that check if a runtime value adheres to a defined schema and produce validation results.
Distinguishing note: No candidates provide a general runtime value validation concept; others focus on A/B testing or PaaS.
Explore 66 awesome GitHub repositories matching software engineering & architecture · Runtime Value 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
Checks if a value matches a schema and returns the result or throws detailed validation errors.
This is a Go struct validation library used to maintain data integrity by enforcing constraints on fields, slices, and maps. It functions as a schema validation tool and data integrity validator, ensuring that complex nested structures adhere to predefined rules. The library utilizes struct tags to configure validation logic at runtime and supports a custom function registry for extending validation rules. It is distinguished by its ability to perform cross-field dependency evaluation, allowing the comparison of values between different fields within the same data structure to ensure logical
Enforces field-level constraints including length, range, and presence to control data requirements.
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 given type contains any required properties to change API behavior.
Lombok is a Java annotation processor and boilerplate reduction library designed to automatically generate repetitive source code. It intercepts the compilation process to inject methods and fields directly into Java classes, acting as a source code generator that eliminates the need to manually write common class patterns. The project distinguishes itself through deep integration with the Java compiler and various integrated development environments. It provides IDE plugins that allow editors to recognize and navigate generated methods, preventing false compilation errors and maintaining syn
Injects null checks into methods to trigger exceptions immediately when null values are encountered.
This project is a collection of programming language references and syntax cheat sheets designed for rapid developer onboarding. It serves as a library of code-based documentation that uses valid source code files to provide whirlwind tours of various language specifications. The project focuses on programming language learning by providing concise, commented code examples that explain core features and syntax in place. This approach enables developers to quickly grasp language-specific patterns, data types, and execution flow through a consistent reference format. The content covers a broad
Provides examples of enforcing specific allowed values for fields using enums.
es-toolkit is a JavaScript utility library and TypeScript data transformation toolset designed as a high-performance alternative to traditional utility suites. It serves as a tree-shakable module library and a compatibility layer for those migrating from legacy dependencies by mirroring established function signatures. The project is specifically optimized for AI code generation, providing structured documentation and specialized skill sets to improve the accuracy and discoverability of its functions for AI coding assistants. Its architecture focuses on a zero-dependency core and modular expo
Provides verification to determine if a value is neither null nor undefined.
async-validator 是一个 JavaScript 模式验证库和异步数据验证引擎。它通过应用递归规则和非阻塞的、基于 Promise 的执行来验证复杂的对象结构和嵌套数组,以确保数据完整性。 该库既充当对象约束验证器,也充当数据转换流水线。它允许通过在主要验证过程之前和之后运行的一系列函数来对输入值进行清洗、强制转换和格式化。 该引擎涵盖了一系列功能,包括递归嵌套验证、标准模式约束的强制执行,以及通过定制验证器函数集成自定义业务逻辑。它还提供了通过静态字符串或动态函数进行错误消息自定义和本地化的工具。
Applies sanitization and coercion transformations to input values before they are processed by validation rules.
is.js is a JavaScript validation library and data type checker. It provides a suite of utilities to verify whether variables are primitives, arrays, functions, or specific object types. The project allows for the implementation of custom validation logic and the use of naming namespaces to override default rules and regular expressions. It covers a broad range of validation capabilities, including numeric arithmetic properties, date and time analysis for relative and absolute ranges, and string format verification for patterns such as emails, URLs, and IP addresses. The library also includes
Determines if a value is empty, exists, or is truthy or falsy across different data types.
Valibot is a modular, type-safe schema library for validating and parsing structural data in TypeScript environments.
Deno Valide marks specific entries in an object schema as required to ensure keys are present.
Any-rule is a multi-platform regular expression tool that provides a curated catalog of over 70 ready-to-use patterns for validating and extracting common data formats. The project separates its static regex collection from editor-specific plugins, allowing the same pattern library to be accessed through VS Code, IntelliJ IDEA, Alfred Workflow, and a web interface. The tool enables keyword-based pattern retrieval, letting users search for the correct regex by typing descriptive terms rather than remembering exact syntax. It covers a broad range of validation needs including email addresses, U
Provides a regex pattern to validate date strings with optional leap year checking.
Javalin is a lightweight web framework for Java and Kotlin designed for building REST APIs and web applications. It functions as an embedded Jetty web server, allowing applications to run as standalone processes without the need for an external servlet container. The project provides specialized frameworks for diverse communication patterns, including a REST API framework with automatic OpenAPI schema generation, a GraphQL API framework with query and mutation resolvers, and a WebSocket server for bidirectional real-time communication. It also includes a dedicated framework for pushing real-t
Provides validators that return nullable types by default and require explicit markers for required values.
RIBs is a mobile architecture framework that structures applications around isolated, lifecycle-managed units of business logic called RIBs. Each RIB separates routing, business logic, and construction into distinct classes through the Router-Interactor-Builder pattern, with hierarchical dependency injection scoping dependencies per node and static analysis enforcing architectural rules at build time. The framework enforces automatic disposal of Rx subscriptions scoped to interactor lifecycles, blocking compilation when subscriptions lack proper disposal to prevent memory leaks. It supports v
Verifies null safety at build time by checking that nullable values are handled before use, preventing null-pointer exceptions.
This is an ECMAScript proposal that introduces a pipeline operator for JavaScript, enabling left-to-right expression chaining with a dedicated placeholder token to reference the previous step's value. The proposal defines a syntax-only transformation that desugars to standard JavaScript, requiring no new runtime support or engine primitives. The pipeline operator allows chaining operations sequentially, passing each result to the next step in natural reading order. It includes a null-safe variant that short-circuits on nullish values, returning them unchanged and skipping remaining steps. Eac
Stops pipeline processing early on nullish values, returning them unchanged without further steps.
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
Restricts values to a predefined set of allowed primitives, symbols, or objects.
SwiftDate is a date manipulation library for the Swift programming language. It provides a toolkit for parsing, validating, and formatting dates, times, and timezones. The library includes a relative time generator for producing date offsets based on reference points such as tomorrow or next week, and a localized date formatter for transforming date objects into human-readable strings across multiple languages and locales. It also features an ISO8601 date parser to convert standardized date strings from SQL, HTTP, and ISO8601 formats into structured objects, alongside tools for managing timez
Provides validation checks to verify that date strings match expected formats and are chronologically valid.
MapStruct is an annotation processor and Java bean mapping framework that automatically generates high-performance data transfer code during the compilation process. It serves as a type-safe data mapper for converting information between different object types, specifically targeting Java beans and records. The project replaces manual boilerplate code by using Java interfaces as blueprints to generate concrete implementation classes. This approach ensures type safety and minimizes manual getter and setter calls by producing direct method calls during compilation. The framework handles data t
Inserts guards and assigns default values by analyzing nullness annotations during data mapping.
This PHP assertion library is a runtime data validator used to verify method inputs and outputs. It provides a toolkit for validating data types, numeric ranges, and string patterns during program execution to prevent invalid states. The project serves as a static analysis helper by providing type hints and annotations that improve the accuracy of formal verification tools. It includes a collection validation utility for applying rules across arrays or iterable collections, and a filesystem validation tool to verify path existence and read or write permissions. The library covers a broad ran
Allows validation checks to be executed only when a provided value is not null, supporting optional fields.
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.
Removes optional and nullable markers from all properties in an object type to ensure their presence.
evcc is an open-source home energy management system and solar charging optimization engine. It coordinates solar inverters, electric vehicle chargers, home batteries, and smart devices to route surplus solar energy to load points, optimizing energy use and minimizing grid costs. The platform functions as a multi-protocol charger orchestrator and ISO 15118-2 plug and charge controller, enabling automatic vehicle identification and battery state retrieval. It distinguishes itself through a plugin-based device abstraction layer and protocol-agnostic drivers that unify control across diverse har
Provides a value only when a separate boolean validation signal is true.
aws-sam-local 是一个基于 Docker 的模拟器,用于在本地机器上运行和调试 AWS Lambda 函数及 API Gateway 配置。它提供了一个模拟 AWS Lambda 运行时的本地执行环境,允许在云部署前验证函数代码和无服务器应用程序模拟。 该项目利用运行时编排器来管理临时容器,复制云函数的隔离执行环境。它包括一个无服务器 API 网关模拟器和事件模拟工具,用于从 Kafka 和其他云触发器等源合成有效载荷。 该工具通过支持无服务器 API 的本地原型设计和各种云事件源的模拟,支持无服务器应用程序模型(Serverless Application Model)的更广泛开发周期。它提供了一个调试环境,用于识别无服务器函数中的错误,并完全控制执行状态。
Validates entire event structures against specifications to ensure correctness of context attributes.