19 个仓库
Tools for parsing, validating, and enforcing data structures against predefined schemas.
Distinguishing note: Focuses on schema-based data validation and parsing logic rather than general database management or storage.
Explore 19 awesome GitHub repositories matching data & databases · Data Validation Libraries. Refine with filters or upvote what's useful.
Zod is a TypeScript-first schema declaration and validation library designed to ensure end-to-end data integrity. It functions as a runtime type guard, allowing developers to define complex data structures through a declarative, chainable syntax. By using these schema definitions, the library automatically derives static TypeScript types, eliminating the need for manual type duplication and ensuring that runtime data matches expected application contracts. The library distinguishes itself through functional schema composition, which enables the creation of hierarchical structures by nesting a
Provides robust schema parsing and validation capabilities with support for both synchronous and asynchronous data processing.
Toon is a data serialization library and toolkit designed to convert complex objects into compact, human-readable formats optimized for large language models. By focusing on token efficiency, the library minimizes the context window footprint of structured data through techniques like key folding and tabular layout optimization. It provides a streaming-capable processor that handles the encoding and decoding of hierarchical data while maintaining structural integrity. The project distinguishes itself through its path-aware transformation pipeline and configurable serialization logic, which al
Enforces schema consistency and detects data corruption by checking serialized documents against structural invariants.
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
Ships a library for parsing and validating data structures against predefined schemas.
Joi is a JavaScript data validation library used to define schemas that validate, cast, and sanitize data objects. It functions as an object schema validator and parser, ensuring that input data matches specific types and formats before it is processed by an application. The library features a conditional validation engine capable of dynamic schema enforcement, where validation logic and dependencies change based on the values of other keys within an object. It also serves as a data casting and sanitization tool, transforming input values into target types and removing sensitive keys from the
Defines schemas to validate, cast, and sanitize data objects in JavaScript environments.
Joi is a JavaScript data validation library used to define schemas that ensure the structure and data types of objects remain consistent. It functions as a schema-based validator and object schema definition tool, preventing invalid information from entering an application by checking data against predefined constraints and rules. The library employs a chainable fluent interface and a constraint-based validation engine to build complex validation pipelines. It utilizes recursive tree traversal to validate nested data structures and a type-coercion pipeline to transform input values into the t
Provides a comprehensive library for defining schemas to validate the structure and data types of JavaScript objects.
Elysia is a high-performance TypeScript web framework designed for building type-safe backend services. It provides a modular, plugin-based architecture that allows developers to compose server logic, middleware, and validation schemas into scalable application instances. By leveraging native web standards, the framework ensures portability across diverse JavaScript runtimes, including Node.js, Deno, and various edge computing environments. The framework distinguishes itself through its focus on end-to-end type safety, automatically synchronizing request and response definitions between the s
Integrates different schema validation libraries within the same application to ensure consistent data integrity.
Ajv is a high-performance data validation framework that compiles JSON schemas into optimized, standalone JavaScript functions. By transforming declarative schema definitions into executable code, it eliminates runtime interpretation overhead and provides a secure, efficient way to enforce data integrity across both browser and server environments. The library distinguishes itself through its focus on performance and type safety. It employs advanced compilation techniques, including abstract syntax tree optimization and function caching, to ensure rapid validation. Beyond standard checks, it
Enforces validation constraints by comparing field values against other properties within the same object using pointers.
Lightweight Charts is a specialized library for rendering interactive time-series financial data visualizations within web applications. It provides a high-performance, responsive component designed to display historical and live market trends through various graphical formats, including candlesticks, histograms, and line series. The library distinguishes itself through a canvas-based rendering engine that decouples visual representation from raw data, enabling efficient updates and real-time monitoring of large datasets. It includes built-in support for accessibility, ensuring that interacti
Validates timestamps and business day objects to ensure data structural integrity and prevent rendering errors.
Great Expectations is a data quality testing framework and observability platform designed to monitor the reliability of data pipelines. It provides a structured environment for defining, documenting, and automating data quality assertions, allowing teams to validate datasets against expected structure and content before they move through downstream processes. The project distinguishes itself through a declarative domain-specific language that stores quality rules as version-controlled configuration files. It utilizes an execution engine abstraction to translate these high-level assertions in
Compares datasets against predefined rules to identify anomalies and schema deviations.
This project is a framework for the efficient serialization and deserialization of data structures. It provides a unified, macro-based interface that automates the conversion of complex internal objects into standardized formats and reconstructs them from raw input streams or buffers. By leveraging compile-time code generation, the library minimizes manual implementation overhead while ensuring consistent logic across diverse data types. The framework distinguishes itself through a format-agnostic data model and a visitor-based parsing architecture that decouples data structures from specific
Improves performance by ignoring incoming data during deserialization without storing it in memory.
ArduinoJson is a C++ library for parsing and manipulating JSON data and MessagePack binary streams on microcontrollers with limited memory and processing power. It provides the core primitives necessary for embedded data serialization and parsing, enabling devices to exchange structured data over serial or network interfaces. The library is distinguished by its focus on microcontroller memory management, employing strategies such as pool-based allocation, string deduplication, and non-owning string views to minimize RAM usage. It further optimizes for constrained environments by allowing cons
Minimizes memory usage by discarding unwanted JSON keys during the deserialization process.
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
Provides a comprehensive library for parsing, validating, and enforcing data structures against predefined schemas in JavaScript and TypeScript.
Ecto is an Elixir database toolkit that maps database rows to Elixir structs and validates data changes through changesets before persistence. It provides a language-integrated query syntax for composing database queries, building them incrementally and securely with compile-time expansion into safe SQL. The toolkit connects to multiple database backends including PostgreSQL, MySQL, MSSQL, SQLite3, ClickHouse, and ETS through a pluggable adapter interface. It supports eager and lazy preloading of associated records to eliminate N+1 query problems, and can store nested data structures as embed
Maps database rows to structs and validates changes through changesets before persistence.
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
Provides a lenient JSON parser that recovers data from malformed input while reporting syntax errors.
该项目是一个用 C 语言实现的支持向量机(SVM)库,为分类和回归任务提供引擎。它作为一个机器学习内核库和统计模型验证器,用于对数据点进行分类并预测连续数值。 该库允许定义自定义内核函数,以计算专门数据集中数据点之间的相似度。它还包括用于概率建模的工具,例如估计类成员资格、数据密度和分布边界。 广泛的功能涵盖了多类数据集的模型训练,包括通过加权损失函数管理不平衡数据。该系统提供了使用精度轮廓和分层交叉验证进行超参数选择和模型优化的工作流。 包含用于输入验证和属性缩放的数据预处理工具,以归一化特征量级。
Checks datasets for consistency and formatting errors before they are processed by the learning algorithm.
Pandera is a data pipeline validation framework and statistical type validation tool. It functions as a library for defining and enforcing schemas on datasets to ensure data quality and consistency, specifically providing validation capabilities for Pandas dataframes. The project includes a schema inference tool that automates setup by analyzing existing dataset samples to generate validation schemas. It also serves as a synthetic data generator, creating artificial datasets based on predefined schemas to verify data-producing functions. The framework covers data engineering quality assuranc
Provides a specialized library for enforcing schemas and validating data structures within Pandas dataframes.
v8n 是一款 JavaScript 数据验证库,用于验证值、对象和数组是否符合特定标准。它作为一个基于模式的验证器和异步验证引擎,利用流畅的 API 构建可链式调用的规则和约束序列。 该框架因其能够在验证过程中执行 Promise 和网络请求以确定值是否有效而脱颖而出。它允许创建可重用的验证模式,并提供了一个可自定义的规则框架,用户可以在其中定义自己的逻辑并配置如何返回错误结果。 该库涵盖了广泛的验证功能,包括针对原始类型和原型的数据类型验证、通过正则表达式和字符集的字符串内容验证,以及数值约束。它还支持复杂的对象验证、集合和数组元素验证,以及用于反转规则或处理可选值的条件逻辑。 该系统专为详细的错误收集而设计,根据每个定义的规则评估值,以收集完整的失败列表,而不是在第一个错误处停止。
Functions as a tool for parsing and validating JavaScript data structures against predefined schemas.
该库是一个 PHP 框架,用于通过根据预定义约束验证标量值和复杂对象结构来强制执行数据完整性和业务规则。它提供了一种检查对象图和属性元数据的结构化方法,确保数据在被应用处理之前符合预期要求。 该框架的特色在于元数据驱动的映射系统,它使用反射或配置文件将规则直接应用于对象属性。它支持上下文规则编排,允许开发者将约束组织成逻辑组,根据应用状态或数据生命周期有选择地触发。该系统还采用基于访问者的遍历模式来检查复杂对象结构,并使用惰性加载仅在需要时实例化验证规则。 除了核心验证外,该库还包括用于数据格式化、时间比较和输入清理的实用程序。它具有解耦的架构,将约束定义与执行逻辑分离开来,从而能够创建可重用的、特定于领域的规则。错误处理通过翻译抽象层进行管理,该层将违规结果映射为本地化消息,以实现国际化的报告。
Checks individual scalar values against defined constraints to ensure they meet specific format or value requirements.
Dry-validation is a Ruby library designed for defining type-safe schemas and complex validation rules to verify and sanitize input data structures. It provides a formal framework for constructing modular validation logic, ensuring that incoming information meets specific business requirements and data formats before it is processed by an application. The library utilizes a domain-specific language to declare validation rules, which are then parsed into executable objects. It distinguishes itself through a macro-driven system that bundles common validation logic into reusable shortcuts, alongs
Provides a library for defining type-safe schemas and complex validation rules to verify and sanitize input data structures in Ruby.