47 مستودعات
Libraries for validating data structures, schemas, and business logic.
Explore 47 awesome GitHub repositories matching part of an awesome list · Data Validation. 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
TypeScript-first schema validation.
Pydantic is a data validation and serialization library that enforces schema constraints and performs type conversion on complex data structures. It utilizes standard Python type annotations to define data models, allowing developers to establish structured schemas that automatically enforce business rules and constraints without the need for custom domain-specific languages. The library distinguishes itself by transforming high-level model definitions into optimized code during initialization to minimize runtime overhead. It supports recursive validation for nested data structures and employ
Data validation using Python type hints.
Validator.js is a library of pure, stateless functions designed for the validation and sanitization of string data within any JavaScript environment. It provides a modular suite of tools to verify that user-provided information conforms to specific formats, such as emails, URLs, and dates, while simultaneously cleaning untrusted input to mitigate security risks. The library distinguishes itself through a design that avoids platform-specific APIs, ensuring consistent execution across browsers, servers, and edge runtimes. By utilizing a pre-compiled regular expression engine and a pure data tra
Library for string validation.
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
Minimalist object schema validation.
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
Object schema description and validation language.
Ajv is a JSON Schema validator and schema compilation engine used to verify that JavaScript objects conform to specific JSON Schema definitions. It functions as a data coercer and localization tool, allowing for the application of default values and the translation of validation error messages into different languages. The project converts declarative JSON Schema definitions into optimized JavaScript functions to increase validation speed. It supports the extension of validation logic through custom keywords and the generation of standalone validation code that executes without external depen
High-performance JSON Schema validator.
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
Decorator-based class property validation.
async-validator هي مكتبة JavaScript للتحقق من المخططات ومحرك للتحقق من البيانات غير المتزامن. تتحقق من هياكل الكائنات المعقدة والمصفوفات المتداخلة من خلال تطبيق قواعد متكررة وتنفيذ غير حظر (non-blocking) يعتمد على الوعود (promises) لضمان سلامة البيانات. تعمل المكتبة كمدقق لقيود الكائنات وخط أنابيب لتحويل البيانات. تسمح بتنقية، وإكراه، وتنسيق قيم المدخلات من خلال سلسلة من الدوال التي تعمل قبل وبعد عملية التحقق الأساسية. يغطي المحرك مجموعة من القدرات بما في ذلك التحقق المتداخل المتكرر، وفرض قيود المخطط القياسية، وتكامل منطق الأعمال المخصص عبر دوال تحقق مصممة خصيصاً. كما توفر أدوات لتخصيص رسائل الخطأ والترجمة من خلال سلاسل ثابتة أو دوال ديناميكية.
Asynchronous data validation.
Valibot is a modular, type-safe schema library for validating and parsing structural data in TypeScript environments.
Deno Valide gathers detailed information about every schema violation during data validation for comprehensive reporting.
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
Composable data validation for JS and TS.
هذا المشروع هو مكتبة وإطار عمل للتحقق من JSON Schema يستخدم للتحقق من أن حالات البيانات تتوافق مع التعريفات التصريحية. يعمل كمحرك تحقق يفرض قيوداً هيكلية وأنواع بيانات، بينما يعمل أيضاً كمدقق وصفي لضمان أن تعريفات المخطط نفسها صحيحة نحوياً مقابل المخططات الوصفية الرسمية. تم تصميم المكتبة لتكون قابلة للتوسيع، مما يسمح للمستخدمين بتعريف منطق تحقق مخصص عن طريق تعيين كلمات مفتاحية للمخطط إلى وظائف قابلة للاستدعاء متخصصة. يتضمن محلل مرجع يعتمد على السجل لإدارة مراجع URI الداخلية والخارجية لإعادة استخدام المخططات الفرعية عبر مستندات مختلفة. يغطي النظام مجموعة واسعة من قدرات التحقق، بما في ذلك التحقق من نوع البيانات، وفحص تنسيق السلسلة لأنواع مثل رسائل البريد الإلكتروني وUUIDs، وتقارير أخطاء شاملة. توفر الأدوات التشخيصية تتبعاً متداخلاً للأخطاء وتصفية استدلالية لتحديد الإخفاقات الأكثر صلة داخل هيكل البيانات.
Implementation of the JSON Schema specification.
v8n هي مكتبة للتحقق من صحة البيانات بلغة JavaScript تُستخدم للتحقق من أن القيم والكائنات والمصفوفات تلبي معايير محددة. تعمل كمحقق قائم على المخطط ومحرك تحقق غير متزامن، مستخدمة API طليقاً لبناء تسلسلات من القواعد والقيود القابلة للسلسلة. يتميز إطار العمل بقدرته على تنفيذ الوعود (promises) وطلبات الشبكة أثناء عملية التحقق لتحديد ما إذا كانت القيمة صالحة. يسمح بإنشاء مخططات تحقق قابلة لإعادة الاستخدام ويوفر إطار عمل قواعد قابلاً للتخصيص حيث يمكن للمستخدمين تحديد منطقهم الخاص وتكوين كيفية إرجاع نتائج الخطأ. تغطي المكتبة مجموعة واسعة من قدرات التحقق، بما في ذلك التحقق من نوع البيانات للبدائيات والنماذج الأولية، والتحقق من محتوى النص عبر regex ومجموعات الأحرف، والقيود الرقمية. كما تدعم التحقق من الكائنات المعقدة، والتحقق من عناصر المجموعات والمصفوفات، والمنطق الشرطي لعكس القواعد أو التعامل مع القيم الاختيارية. صُمم النظام لجمع الأخطاء بالتفصيل، حيث يقيم القيم مقابل كل قاعدة محددة لجمع قائمة كاملة بالإخفاقات بدلاً من التوقف عند الخطأ الأول.
Fluent JavaScript validation library.
Lightweight, extensible data validation library for Python
Lightweight and extensible data validation.
Schema validation just got Pythonic
Pythonic schema validation library.
هذه المكتبة عبارة عن إطار عمل PHP لفرض سلامة البيانات وقواعد العمل من خلال التحقق من القيم العددية وهياكل الكائنات المعقدة مقابل قيود محددة مسبقاً. توفر نهجاً مهيكلاً لفحص رسوم بيانية للكائنات وبيانات وصفية للخصائص، مما يضمن توافق البيانات مع المتطلبات المتوقعة قبل معالجتها بواسطة التطبيق. يتميز إطار العمل بنظام تعيين قائم على البيانات الوصفية يستخدم الانعكاس (reflection) أو ملفات التكوين لتطبيق القواعد مباشرة على خصائص الكائن. يدعم تنسيق القواعد السياقية، مما يسمح للمطورين بتنظيم القيود في مجموعات منطقية يتم تشغيلها بشكل انتقائي بناءً على حالة التطبيق أو دورة حياة البيانات. يستخدم النظام أيضاً نمط اجتياز قائم على الزائر (visitor-based) لفحص هياكل الكائنات المعقدة ويستخدم التحميل الكسول (lazy-loading) لإنشاء قواعد التحقق فقط عند الحاجة. بعيداً عن التحقق الأساسي، تتضمن المكتبة أدوات لتنسيق البيانات، والمقارنات الزمنية، وتنقية المدخلات. تتميز بمعمارية مفككة تفصل تعريفات القيود عن منطق التنفيذ، مما يتيح إنشاء قواعد قابلة لإعادة الاستخدام ومحددة النطاق. تُدار معالجة الأخطاء من خلال طبقة تجريد الترجمة، التي تعين نتائج الانتهاك إلى رسائل مترجمة للتقارير الدولية.
Validates values and object properties against predefined rule sets to ensure compliance with business logic.
JSON schema validator, which is designed to be fast and simple to use. JSON Schema versions through draft-07 are fully supported.
JSON Schema validation tool.
CONTRIBUTIONS ONLY: Voluptuous, despite the name, is a Python data validation library.
Data validation library for complex structures.
The validatorjs library makes data validation in JavaScript very easy in both the browser and Node.js. This library was inspired by the Laravel framework's Validator.
Data validation inspired by Laravel.
ForgJs is a javascript lightweight object validator.
Lightweight object validation.
A robust email syntax and deliverability validation library for Python.
Robust email syntax and deliverability validation.