awesome-repositories.com
博客
MCP
awesome-repositories.com

通过 AI 驱动的搜索,发现最优秀的开源仓库。

探索精选搜索开源替代品自托管软件博客网站地图
项目关于排名机制媒体报道MCP 服务器
法律隐私政策服务条款
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
dry-rb avatar

dry-rb/dry-validation

0
View on GitHub↗
1,422 星标·193 分支·Ruby·MIT·11 次浏览dry-rb.org/gems/dry-validation↗

Dry Validation

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, alongside a recursive composition model that allows developers to nest validation objects to build complex, hierarchical structures. This approach enables the creation of consistent, modular logic that prevents code duplication across large applications.

Beyond core schema definition, the library includes a type-coercion pipeline that transforms raw input into expected formats and a structured error aggregation system that maps failures to specific input paths. It supports configuration hooks for external dependency integration and provides tools for sanitizing data, making it suitable for enforcing standards on incoming API requests and complex data objects.

Features

  • Data Validation Libraries - Provides a library for defining type-safe schemas and complex validation rules to verify and sanitize input data structures in Ruby.
  • Schema Definitions - Provides tools to define formal rules and schemas to verify that incoming information matches expected formats.
  • Data Schema Validation - Defines formal rules and schemas to verify that incoming information matches expected formats and business requirements.
  • Schema Definition Frameworks - Builds modular and composable validation logic that ensures incoming information meets specific business requirements.
  • Coercion Pipelines - Transforms raw input data into expected types during the validation process to ensure consistent downstream information.
  • Schema Validation Libraries - Allows developers to combine and nest multiple validation rules to create modular logic.
  • Reusable Rule Logic - Bundles common validation logic into reusable shortcuts to simplify the definition of repetitive business rules.
  • Complex Structure Validation - Supports defining detailed rules for nested or complicated data objects to ensure structural correctness.
  • Data Sanitization Utilities - Converts raw input into consistent types and formats while reporting clear error messages for invalid entries.
  • Data Validation and Sanitization - Cleans and converts raw input into consistent types and formats during the validation process.
  • Boolean Predicates - Executes atomic logic checks against input data by mapping field keys to a library of reusable boolean verification methods.
  • DSL-Driven Validations - Provides a domain-specific language to declare validation rules and data structures that are parsed into executable objects.
  • Validation Error Reporters - Reports validation errors with clear messages and custom details to help users understand input failures.
  • Validation Error Aggregators - Collects validation failures into a structured object that maps specific input paths to descriptive error messages.
  • Request Validation - Ensures that incoming data from external clients meets specific standards before it is accepted by backend services.
  • Schema Composition Libraries - Supports nesting validation objects within one another to build complex hierarchical structures from modular components.
  • Validation Logic Decoupling - Composes and nests reusable validation rules to keep code clean and prevent duplication.
  • Reusable Validators - Provides shared validation shortcuts that bundle common rules together for consistent application across the codebase.

Star 历史

dry-rb/dry-validation 的 Star 历史图表dry-rb/dry-validation 的 Star 历史图表

AI 搜索

探索更多 awesome 仓库

用简单的语言描述您的需求 —— AI 将根据相关性为您从数千个精选开源项目中进行排序。

Start searching with AI

包含 Dry Validation 的精选搜索

收录 Dry Validation 的精选合集。
  • 数据模式验证工具
  • 模型属性验证库
  • 用于管理应用配置文件的库

Dry Validation 的开源替代方案

相似的开源项目,按与 Dry Validation 的功能重合度排序。
  • hapijs/joihapijs 的头像

    hapijs/joi

    21,192在 GitHub 上查看↗

    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

    JavaScripthapijavascriptschema
    在 GitHub 上查看↗21,192
  • sideway/joisideway 的头像

    sideway/joi

    21,192在 GitHub 上查看↗

    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

    JavaScript
    在 GitHub 上查看↗21,192
  • elysiajs/elysiaelysiajs 的头像

    elysiajs/elysia

    18,531在 GitHub 上查看↗

    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

    TypeScriptbunframeworkhttp
    在 GitHub 上查看↗18,531
  • jquense/yupjquense 的头像

    jquense/yup

    23,673在 GitHub 上查看↗

    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

    TypeScript
    在 GitHub 上查看↗23,673
查看 Dry Validation 的所有 30 个替代方案→

常见问题解答

dry-rb/dry-validation 是做什么的?

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.

dry-rb/dry-validation 的主要功能有哪些?

dry-rb/dry-validation 的主要功能包括:Data Validation Libraries, Schema Definitions, Data Schema Validation, Schema Definition Frameworks, Coercion Pipelines, Schema Validation Libraries, Reusable Rule Logic, Complex Structure Validation。

dry-rb/dry-validation 有哪些开源替代品?

dry-rb/dry-validation 的开源替代品包括: hapijs/joi — Joi is a JavaScript data validation library used to define schemas that validate, cast, and sanitize data objects. It… sideway/joi — Joi is a JavaScript data validation library used to define schemas that ensure the structure and data types of objects… elysiajs/elysia — Elysia is a high-performance TypeScript web framework designed for building type-safe backend services. It provides a… jquense/yup — Yup is a JavaScript schema validation library used to define data shapes and validate runtime values. It functions as… ianstormtaylor/superstruct — Superstruct is a JavaScript and TypeScript data validation library used to verify that data structures match defined… ajv-validator/ajv — Ajv is a high-performance data validation framework that compiles JSON schemas into optimized, standalone JavaScript…