Apresentando Schema - Uma Biblioteca de Validação para Go Inspirada no Zod
Olá, galera! Todos bem?
Estou trabalhando numa biblioteca de validação open-source para Golang chamada Schema
e estou super empolgado para compartilhar isso com a comunidade!
🎉 O que é Schema?
Schema é uma biblioteca de validação leve, porém poderosa, para Go, inspirada na popular biblioteca JavaScript, Zod. Seja validando strings, números ou até structs complexas, o Schema oferece uma API limpa e intuitiva para tornar a validação fácil e eficiente.
🌟 Recursos
- Validação de Strings
- Validação de Números
- Validação de Structs
- Mensagens de Erro Personalizadas: Personalize mensagens de erro para fornecer feedback significativo.
- Extensibilidade: Estenda a biblioteca com lógica de validação personalizada facilmente.
📦 Instalação
go get github.com/mkafonso/schema
Exemplo de como utilizar
package yours
import (
"fmt"
"github.com/mkafonso/schema/pkg/validator"
)
func ValidateEmailExample() {
input := "[email protected]"
stringValidator := validator.NewStringValidator().
MinLength(5, "A string deve ter no mínimo 5 caracteres").
MaxLength(50, "A string deve ter no máximo 50 caracteres").
IsEmail("Formato de email inválido")
result := stringValidator.Validate(input)
if result.IsValid {
fmt.Println("Validation successful!")
} else {
fmt.Println("Validation error:", result.Errors)
}
}
Experimente e me diga o que achou. Estou ansioso para receber seu feedback!
Link do repositório: https://github.com/mkafonso/schema