awesome-repositories.com
Blog
awesome-repositories.com

Descubre los mejores repositorios open-source con nuestra búsqueda potenciada por IA.

ExplorarBúsquedas curadasAlternativas open-sourceSoftware autohospedableBlogMapa del sitio
ProyectoAcerca deCómo clasificamosPrensaServidor MCP
Aviso legalPrivacidadTérminos
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
go-validator avatar

go-validator/validator

0
View on GitHub↗
1,335 estrellas·124 forks·Go·Apache-2.0·6 vistas

Validator

Este proyecto es un framework de validación de datos para el lenguaje de programación Go que impone integridad aplicando restricciones declarativas a los campos de los structs. Utiliza reflexión para inspeccionar estructuras de datos en tiempo de ejecución, mapeando los requisitos a nivel de campo definidos en los tags de los structs a una lógica de validación específica.

La librería se distingue por su capacidad para manejar grafos de objetos complejos recorriendo recursivamente estructuras anidadas y slices. Soporta validación consciente del contexto, permitiendo a los desarrolladores cambiar entre diferentes conjuntos de reglas para la misma estructura de datos según el estado de la aplicación o requisitos específicos.

Más allá de las comprobaciones de campo estándar, el framework proporciona un sistema basado en registro para definir funciones de validación personalizadas. Esto permite la integración de lógica de negocio especializada para manejar tareas complejas de verificación de datos, como sanitizar payloads de peticiones API entrantes o imponer restricciones de unicidad en toda una aplicación.

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.

Historial de estrellas

Gráfico del historial de estrellas de go-validator/validatorGráfico del historial de estrellas de go-validator/validator

Búsqueda con IA

Explora más repositorios increíbles

Describe lo que necesitas en lenguaje sencillo: la IA clasifica miles de proyectos open-source curados por relevancia.

Start searching with AI

Colecciones destacadas con Validator

Colecciones seleccionadas manualmente donde aparece Validator.
  • una librería para validación de atributos de modelos
  • Gestión de errores en API

Alternativas open-source a Validator

Proyectos open-source similares, clasificados según cuántas características comparten con Validator.
  • asaskevich/govalidatorAvatar de asaskevich

    asaskevich/govalidator

    6,203Ver en GitHub↗

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

    Gogogovalidatorsanitization
    Ver en GitHub↗6,203
  • go-playground/validatorAvatar de go-playground

    go-playground/validator

    20,028Ver en 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
    Ver en GitHub↗20,028
  • keats/validatorAvatar de Keats

    Keats/validator

    2,488Ver en 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
    Ver en GitHub↗2,488
  • go-ozzo/ozzo-validationAvatar de go-ozzo

    go-ozzo/ozzo-validation

    4,072Ver en 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
    Ver en GitHub↗4,072
Ver las 30 alternativas a Validator→

Preguntas frecuentes

¿Qué hace go-validator/validator?

Este proyecto es un framework de validación de datos para el lenguaje de programación Go que impone integridad aplicando restricciones declarativas a los campos de los structs. Utiliza reflexión para inspeccionar estructuras de datos en tiempo de ejecución, mapeando los requisitos a nivel de campo definidos en los tags de los structs a una lógica de validación específica.

¿Cuáles son las características principales de go-validator/validator?

Las características principales de go-validator/validator son: 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.

¿Qué alternativas de código abierto existen para go-validator/validator?

Las alternativas de código abierto para go-validator/validator incluyen: 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…