awesome-repositories.com
Blog
awesome-repositories.com

Découvrez les meilleurs dépôts open-source grâce à notre recherche par IA.

ExplorerRecherches sélectionnéesAlternatives open sourceLogiciels auto-hébergésBlogPlan du site
ProjetÀ proposNotre méthodologiePresseServeur MCP
Mentions légalesConfidentialitéConditions d'utilisation
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·

16 dépôts

Awesome GitHub RepositoriesConditional Validation Rules

Logic for enforcing field requirements based on the state or values of other form fields.

Distinct from Field Validation: Distinct from Field Validation: focuses specifically on cross-field dependency logic rather than general data integrity.

Explore 16 awesome GitHub repositories matching data & databases · Conditional Validation Rules. Refine with filters or upvote what's useful.

Awesome Conditional Validation Rules GitHub Repositories

Trouvez les meilleurs dépôts grâce à l'IA.Nous recherchons les dépôts les plus pertinents grâce à l'IA.
  • jquense/yupAvatar de jquense

    jquense/yup

    23,673Voir sur 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

    Provides logic for enforcing field requirements based on the state or values of sibling fields.

    TypeScript
    Voir sur GitHub↗23,673
  • hapijs/joiAvatar de hapijs

    hapijs/joi

    21,192Voir sur 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

    Enforces validation rules dynamically based on the values of other keys within the object.

    JavaScripthapijavascriptschema
    Voir sur GitHub↗21,192
  • wasp-lang/waspAvatar de wasp-lang

    wasp-lang/wasp

    18,146Voir sur GitHub↗

    Wasp is a declarative full-stack web framework that enables developers to build and deploy applications by defining their architecture in a centralized configuration. By using a high-level specification, the framework automates the orchestration of frontend, backend, and database components, ensuring that infrastructure concerns like routing, authentication, and data modeling are handled consistently across the entire stack. The framework distinguishes itself through its compiler-driven approach, which translates declarative configurations into cohesive, production-ready codebases. It provide

    Enforces field requirements based on the state or values of other form fields to ensure data consistency.

    TypeScripthaskelljavascriptnode
    Voir sur GitHub↗18,146
  • ajv-validator/ajvAvatar de ajv-validator

    ajv-validator/ajv

    14,733Voir sur GitHub↗

    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

    Executes specific validation rules based on prerequisite schema satisfaction, enabling complex if-then-else branching.

    TypeScriptajvjson-schemavalidator
    Voir sur GitHub↗14,733
  • typestack/class-validatorAvatar de typestack

    typestack/class-validator

    11,796Voir sur GitHub↗

    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

    Allows skipping specific property checks based on boolean condition functions or property-level triggers.

    TypeScriptdecoratorstypescriptvalidation
    Voir sur GitHub↗11,796
  • symfony/routingAvatar de symfony

    symfony/routing

    7,618Voir sur GitHub↗

    This PHP routing library is an HTTP request router and matcher designed to map incoming URL paths to specific controller actions using defined patterns and configuration. It serves as a programmatic interface for defining, loading, and resolving URL patterns, while providing a URL generator to produce absolute or relative URIs from route names and parameters. The system supports diverse route loading through YAML, XML, PHP arrays, and class attributes, utilizing compiled route matching to optimize performance. It enables sophisticated request handling through regex-based path matching, sub-do

    Applies validation rules to form fields based on the values of other dependent fields.

    PHPcomponentphprouter
    Voir sur GitHub↗7,618
  • datatables/datatablesAvatar de DataTables

    DataTables/DataTables

    7,408Voir sur GitHub↗

    DataTables is a feature-rich HTML table library that transforms static HTML tables into interactive data grids with sorting, paging, filtering, and server-side processing support. It provides a client-side rendering engine that handles table rows, pagination, and sorting entirely in the browser, while also offering a server-side processing pipeline that offloads sorting, filtering, and paging operations to a backend for efficient handling of large datasets. The library distinguishes itself through its plugin-based extension system, which allows custom functions and widgets to modify table beh

    Applies validation rules to a field only when a condition, such as a value in another field, is met.

    CSS
    Voir sur GitHub↗7,408
  • datreeio/datreeAvatar de datreeio

    datreeio/datree

    6,339Voir sur GitHub↗

    Datree is a policy enforcement framework for Kubernetes that validates configurations against rules written in Rego, JSON Schema, or CEL. It operates as both a command-line tool for pre-deployment scanning and as a cluster-side admission webhook for real-time enforcement, integrating with CI/CD pipelines and continuous delivery tools like ArgoCD and FluxCD. The framework supports namespace-scoped policy mapping, allowing different policies to apply to different namespaces, and provides a skip annotation mechanism for selectively bypassing rules on individual resources or entire namespaces. It

    Provides annotation-based per-resource policy rule skipping for Kubernetes manifests.

    Goadmission-webhookbest-practicescli
    Voir sur GitHub↗6,339
  • orval-labs/orvalAvatar de orval-labs

    orval-labs/orval

    6,145Voir sur GitHub↗

    Orval is an OpenAPI-to-TypeScript code generator that produces fully typed API clients, data-fetching hooks, mock data, validation schemas, and server handlers from OpenAPI or Swagger specifications. It reads any YAML or JSON API specification and generates TypeScript interfaces, HTTP request functions, and framework-specific integration code that ensures compile-time correctness for all API calls. The project distinguishes itself by generating production-ready data-fetching hooks for React Query, Vue Query, Svelte Query, Solid Query, Angular, and SWR, complete with automatic cache invalidati

    Disables OpenAPI specification validation to allow code generation from non-compliant or extended specs.

    TypeScript
    Voir sur GitHub↗6,145
  • jeremyevans/sequelAvatar de jeremyevans

    jeremyevans/sequel

    5,076Voir sur GitHub↗

    Sequel is a relational database toolkit for Ruby that provides object-relational mapping, a fluent SQL query builder, and schema migration capabilities. It maps database tables to Ruby classes with support for associations, validations, lifecycle hooks, and eager loading, offering a comprehensive ORM layer for building data-centric applications. Sequel distinguishes itself through a plugin-based extension architecture that allows composable customization of models, databases, and datasets without relying on deep inheritance hierarchies. It includes a thread-safe connection pool with support f

    Sequel applies validation rules only when a given condition is met, using standard Ruby conditionals inside the validate method.

    Ruby
    Voir sur GitHub↗5,076
  • json-editor/json-editorAvatar de json-editor

    json-editor/json-editor

    4,900Voir sur GitHub↗

    JSON Editor est un framework d'interface utilisateur piloté par schéma et un éditeur basé sur le web utilisé pour générer des formulaires interactifs et valider des données JSON. Il traduit les spécifications JSON Schema en une hiérarchie d'éléments de formulaire HTML, permettant aux utilisateurs de manipuler des structures JSON complexes via une interface structurée plutôt que par du texte brut. Le framework se distingue par un système d'extension basé sur des plugins qui prend en charge des fonctions de résolution personnalisées et l'intégration d'éditeurs spécialisés, tels que WYSIWYG, Markdown et des éditeurs de code avec coloration syntaxique. Il emploie une résolution de schéma récursive pour gérer les définitions imbriquées et implémente une validation conditionnelle basée sur l'état en utilisant une logique if-then-else. Le projet fournit un large éventail de capacités, y compris la liaison de données bidirectionnelle, la gestion de la mise en page des tableaux et des objets pour les grilles et les onglets, et la synchronisation dynamique des champs via l'interpolation de template. Sa bibliothèque de composants couvre les entrées standard aux côtés d'outils spécialisés comme les sélecteurs de couleur, les sélecteurs de date-heure, les composants d'autocomplétion et les interfaces de téléchargement de fichiers. L'interface prend en charge la localisation des chaînes d'interface utilisateur et s'intègre à divers frameworks CSS pour découpler la génération de formulaires structurels du style visuel.

    Applies dynamic validation rules using if-then-else logic based on the current values of other form fields.

    JavaScript
    Voir sur GitHub↗4,900
  • jabref/jabrefAvatar de JabRef

    JabRef/jabref

    4,373Voir sur GitHub↗

    This project is a desktop-based bibliographic reference manager designed to organize academic research libraries and automate citation workflows. It functions as a research assistant that integrates directly with word processors and text editors, enabling users to insert and format references while writing. The application is built on a Java-based portable runtime, allowing it to operate as a self-contained tool that stores preferences and data in local configuration files. The platform distinguishes itself through a modular plugin architecture and a commitment to human-readable, text-based f

    Configures validation rules for entry completeness by defining sets of alternative fields where at least one must be present.

    Javaacademiaacademic-publicationsai
    Voir sur GitHub↗4,373
  • dynaconf/dynaconfAvatar de dynaconf

    dynaconf/dynaconf

    4,308Voir sur GitHub↗

    Dynaconf est une bibliothèque de gestion de configuration pour les applications Python qui fournit un système unifié pour charger, valider et gérer les paramètres. Elle agrège les données de configuration depuis plusieurs fichiers, variables d'environnement et magasins externes en un seul objet en utilisant un ordre de priorité défini. Le projet se distingue par un gestionnaire d'environnement en couches qui sépare les paramètres en profils distincts, tels que développement et production. Il inclut un framework de validation déclaratif pour imposer des règles de données et des contraintes de type pendant le processus de chargement, ainsi qu'un intégrateur de magasin de secrets externe pour récupérer des données sensibles depuis HashiCorp Vault et Redis. La bibliothèque prend en charge le chargement de fichiers multi-format pour les fichiers TOML, YAML, JSON, INI et Python. Elle fournit des capacités pour le cast de variables d'environnement, la recherche par notation pointée et l'intégration avec des frameworks web comme Django et Flask pour remplacer les objets de configuration standard. Des utilitaires en ligne de commande sont disponibles pour le bootstrapping de la configuration, la validation des paramètres et l'exécution de surcharges au runtime.

    Implements validation rules that run only when specific conditions are met or after other validators pass.

    Python
    Voir sur GitHub↗4,308
  • go-ozzo/ozzo-validationAvatar de go-ozzo

    go-ozzo/ozzo-validation

    4,072Voir sur GitHub↗

    ozzo-validation is a programmable data validation library for Go that verifies structs, maps, and primitive types using a declarative, rule-based approach. It functions as an interface-based validator, allowing for the recursive checking of nested data structures and custom types without the use of struct tags. The framework distinguishes itself as a context-aware validation engine, supporting the propagation of request-scoped data to rules that depend on external state. It provides extensive extensibility through custom rule definitions and the ability to override default failure text with l

    Executes specific validation rules only when a boolean condition is met.

    Gogogolangozzo
    Voir sur GitHub↗4,072
  • actions/labelerAvatar de actions

    actions/labeler

    2,464Voir sur GitHub↗

    Skips file-based labeling when the number of changed files exceeds a configurable limit.

    TypeScript
    Voir sur GitHub↗2,464
  • neoremind/fluent-validatorAvatar de neoremind

    neoremind/fluent-validator

    1,019Voir sur GitHub↗

    Fluent-validator est un framework de validation Java conçu pour appliquer l'intégrité des données via des contraintes déclaratives et des vérifications automatisées au niveau de la couche de service. Il fournit un environnement structuré pour définir une logique de validation qui s'intègre avec la spécification JSR 303, permettant aux développeurs de maintenir une qualité de données cohérente à travers des hiérarchies d'objets complexes et des limites d'application. Le framework se distingue par une interface fluide qui permet l'orchestration de chaînes de validation, permettant des séquences de règles lisibles et maintenables. Il prend en charge un contrôle d'exécution avancé, y compris la capacité de basculer entre des stratégies d'échec rapide et de basculement, et utilise une interception basée sur proxy pour vérifier automatiquement les arguments de méthode au sein des conteneurs gérés. Au-delà de l'intégration de contraintes standards, la bibliothèque facilite une intégrité profonde des données via le parcours récursif de graphes d'objets et la validation en cascade. Elle s'adapte aux exigences commerciales dynamiques en prenant en charge la logique conditionnelle, les groupes de validation pour la résolution de règles sensible au contexte et l'injection de propriétés externes dans la portée de validation. Les développeurs peuvent également implémenter des classes de validation personnalisées pour gérer des exigences de données uniques aux côtés des annotations standards.

    Executes specific validation rules only when defined runtime conditions are met to handle dynamic business requirements.

    Java
    Voir sur GitHub↗1,019
  1. Home
  2. Data & Databases
  3. Field Validation
  4. Conditional Validation Rules

Explorer les sous-tags

  • Validation Skipping5 sous-tagsMechanisms for bypassing specific validation rules based on triggers or conditions. **Distinct from Conditional Validation Rules:** Focuses on bypassing rules (skipping) rather than enforcing dependencies (conditional rules)