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
·
go-validator avatar

go-validator/validator

0
View on GitHub↗
1,335 stars·124 forks·Go·Apache-2.0·7 vues

Validator

Ce projet est un framework de validation de données pour le langage de programmation Go qui impose l'intégrité en appliquant des contraintes déclaratives aux champs de struct. Il utilise la réflexion pour inspecter les structures de données au moment de l'exécution, en mappant les exigences au niveau du champ définies dans les tags de struct vers une logique de validation spécifique.

La bibliothèque se distingue par sa capacité à gérer des graphes d'objets complexes en parcourant récursivement les structures imbriquées et les slices. Elle prend en charge la validation sensible au contexte, permettant aux développeurs de basculer entre différents ensembles de règles pour la même structure de données en fonction de l'état de l'application ou des exigences spécifiques.

Au-delà des vérifications de champ standard, le framework fournit un système basé sur un registre pour définir des fonctions de validation personnalisées. Cela permet l'intégration d'une logique métier spécialisée pour gérer des tâches complexes de vérification de données, telles que l'assainissement des charges utiles de requêtes API entrantes ou l'application de contraintes d'unicité à travers une application.

Features

  • Data Validation Frameworks - Provides a framework for verifying application data against predefined business logic requirements and complex field-level constraints.
  • Go Validation Libraries - Enforces data integrity by applying declarative constraints and custom validation rules to struct fields using tags.
  • Struct Tag Validators - Checks data fields against predefined constraints using tags to ensure that all values meet specific business logic requirements.
  • Custom Field Validation - Registers custom functions to perform specialized checks on data fields that go beyond standard validation requirements.
  • Contextual Validation Groups - Applies different sets of validation rules to the same data structure depending on the specific application state or user role requirements.
  • Reflection-Based Field Matchers - Traverses object hierarchies dynamically to access and evaluate field values against defined validation rules without manual boilerplate.
  • Data Sanitization Utilities - Validates incoming data payloads in web services to ensure that all fields conform to expected formats before processing.
  • Context-Aware Validation - Supports multiple validation rule sets for the same data structure based on application state or context.
  • Custom Validation Functions - Extends validation capabilities by defining user-provided functions that apply specialized data checks to fields.
  • Function Registries - Maintains a central lookup table of validation functions that allows developers to register and invoke custom business rules.
  • Struct Tags - Uses reflection to parse custom struct tags at runtime, mapping field constraints to specific validation logic.
  • Recursive Struct Traversal - Walks through nested data structures and slices to apply validation rules to every element within a complex object graph.
  • Field Constraints - Applies declarative rules to data structures to ensure that all values meet specific criteria such as length, range, or pattern matching.
  • Pluggable Rule Sets - Configures multiple validation rule sets for the same data structure to apply different constraints based on application state.
  • Custom Logic Validation - Extends standard data verification by registering specialized functions to handle complex business rules that go beyond basic checks.

Historique des stars

Graphique de l'historique des stars pour go-validator/validatorGraphique de l'historique des stars pour go-validator/validator

Recherche par IA

Explorez plus de dépôts awesome

Décrivez vos besoins en langage naturel — l'IA classe des milliers de projets open source sélectionnés par pertinence.

Start searching with AI

Collections incluant Validator

Sélections manuelles où Validator apparaît.
  • une bibliothèque pour la validation d'attributs de modèles
  • Gestion des erreurs d'API

Alternatives open source à Validator

Projets open source similaires, classés selon le nombre de fonctionnalités partagées avec Validator.
  • asaskevich/govalidatorAvatar de asaskevich

    asaskevich/govalidator

    6,203Voir sur GitHub↗

    Go Package of validators and sanitizers for strings, numerics, slices and structs

    Gogogovalidatorsanitization
    Voir sur GitHub↗6,203
  • go-playground/validatorAvatar de go-playground

    go-playground/validator

    20,028Voir sur GitHub↗

    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

    Goerror-handlingtranslationvalidation
    Voir sur GitHub↗20,028
  • keats/validatorAvatar de Keats

    Keats/validator

    2,488Voir sur GitHub↗

    This library is a declarative validation framework for Rust that enforces data integrity and business rules on structured data models. It utilizes procedural macros to transform attribute-based annotations into executable validation logic, ensuring that data structures adhere to defined constraints before processing. The framework distinguishes itself by performing validation at compile time, which eliminates runtime overhead and provides strict type checking for all rules. It supports recursive traversal of nested data structures and collections, ensuring that every level of a hierarchy is v

    Rust
    Voir sur GitHub↗2,488
  • 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

    Gogogolangozzo
    Voir sur GitHub↗4,072
Voir les 30 alternatives à Validator→

Questions fréquentes

Que fait go-validator/validator ?

Ce projet est un framework de validation de données pour le langage de programmation Go qui impose l'intégrité en appliquant des contraintes déclaratives aux champs de struct. Il utilise la réflexion pour inspecter les structures de données au moment de l'exécution, en mappant les exigences au niveau du champ définies dans les tags de struct vers une logique de validation spécifique.

Quelles sont les fonctionnalités principales de go-validator/validator ?

Les fonctionnalités principales de go-validator/validator sont : Data Validation Frameworks, Go Validation Libraries, Struct Tag Validators, Custom Field Validation, Contextual Validation Groups, Reflection-Based Field Matchers, Data Sanitization Utilities, Context-Aware Validation.

Quelles sont les alternatives open-source à go-validator/validator ?

Les alternatives open-source à go-validator/validator incluent : asaskevich/govalidator — [Go] Package of validators and sanitizers for strings, numerics, slices and structs. go-playground/validator — This is a Go struct validation library used to maintain data integrity by enforcing constraints on fields, slices, and… keats/validator — This library is a declarative validation framework for Rust that enforces data integrity and business rules on… go-ozzo/ozzo-validation — ozzo-validation is a programmable data validation library for Go that verifies structs, maps, and primitive types… julian/jsonschema — This project is a Python implementation of the JSON Schema specification, providing a library for verifying that data… mitchellh/mapstructure — mapstructure is a reflection-based library for the bidirectional encoding and decoding of generic map data into native…