SaaSHub helps you find the best software and product alternatives Learn more →
Top 23 Go Validation Projects
-
validator
:100:Go Struct and Field validation, including Cross Field, Cross Struct, Map, Slice and Array diving
Why not use popular Go libraries like Package validator or govalidator? While both libraries are well-known, validatorgo focuses on standalone string validation and provides an extensive collection of customizable validators inspired by validator.js, which neither of these Go libraries fully implement.
-
CodeRabbit
CodeRabbit: AI Code Reviews for Developers. Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis. Boost productivity and code quality across all major languages with each PR.
-
Why not use popular Go libraries like Package validator or govalidator? While both libraries are well-known, validatorgo focuses on standalone string validation and provides an extensive collection of customizable validators inspired by validator.js, which neither of these Go libraries fully implement.
-
-
ozzo-validation
An idiomatic Go (golang) validation package. Supports configurable and extensible validation rules (validators) using normal language constructs instead of error-prone struct tags.
-
protoc-gen-validate
Protocol Buffer Validation - Being replaced by github.com/bufbuild/protovalidate
-
The most effective way to integrate OPA with Kubernetes is to use OPA Gatekeeper, a dynamic admission controller. It lets you enforce the admission policies of your K8s resources at the admission stage to ensure that any resources created or modified comply with your pre-configured policy.
-
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
-
filetype
Fast, dependency-free Go package to infer binary file types based on the magic numbers header signature
-
-
Package govalidator
Validate Golang request data with simple rules. Highly inspired by Laravel's request validation. (by thedevsaddam)
-
-
-
Validate
⚔ Go package for data validation and filtering. support Map, Struct, Form data. Go通用的数据验证与过滤库,使用简单,内置大部分常用验证、过滤器,支持自定义验证器、自定义消息、字段翻译。
-
I'm surprised the author doesn't mention ConnectRPC: https://connectrpc.com/
It solves ALL the problems of vanilla gRPC, and it even is compatible with the gRPC clients! It grew out of Twirp protocol, which I liked so much I made a C++ implementation: https://github.com/Cyberax/twirp-cpp
But ConnectRPC guys went further, and they built a complete infrastructure for RPC. Including a package manager (buf.build), integration with observability ( https://connectrpc.com/docs/go/observability/ ).
And most importantly, they also provide a library to do rich validation (mandatory fields, field limits, formats, etc): https://buf.build/bufbuild/protovalidate
Oh, and for the unlimited message problem, you really need to use streaming. gRPC supports it, as does ConnectRPC.
-
jsonschema
JSONSchema (draft 2020-12, draft 2019-09, draft-7, draft-6, draft-4) Validation using Go (by santhosh-tekuri)
-
encoding
Go package containing implementations of efficient encoding, decoding, and validation APIs.
-
graphql-go-tools
GraphQL Router / API Gateway framework written in Golang, focussing on correctness, extensibility, and high-performance. Supports Federation v1 & v2, Subscriptions & more.
Project mention: An Introduction to Cosmo Router — Blazingly Fast Open-Source Federation V1/V2 Gateway | dev.to | 2025-03-10The Cosmo Router is powered by graphql-go-tools , a highly mature and optimized GraphQL engine (MIT License) that is the fastest and most reliable implementation for Federation V1 . The Cosmo Router builds on it with its own optimizations.
-
-
valgo
Valgo is a type-safe, expressive, and extensible validator library for Golang. Supports localization and is built with generics.
-
-
-
wiretap
The world's coolest API Validation and compliance tool. Validate APIs against OpenAPI specifications and much more (by pb33f)
During the API development phase, a detailed definition guides developers in implementing endpoints, methods, and data schemas correctly. Various tooling exists to ensure your code conforms to the agreed upon spec - including API frameworks like Huma which allow you to build APIs around a spec, as well as API contract testing tools like Wiretap which look at live traffic to detect violations.
-
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
Go Validation discussion
Go Validation related posts
-
cue VS rcl - a user suggested alternative
2 projects | 15 Mar 2025 -
StrictYAML
-
Developing a Simple RESTful API with Gin, ginvalidator, and validatorgo
-
Show HN: Holos – Configure Kubernetes with CUE data structures instead of YAML
-
Ask HN: Happy Thanksgiving What technology are you thankful for?
-
Simplifying String Validation in Go: Introducing validatorgo
-
Como Validar Dados em Golang?
-
A note from our sponsor - SaaSHub
www.saashub.com | 21 Mar 2025
Index
What are some of the best open-source Validation projects in Go? This list will help you:
# | Project | Stars |
---|---|---|
1 | validator | 17,838 |
2 | govalidator | 6,126 |
3 | cue | 5,333 |
4 | ozzo-validation | 3,873 |
5 | protoc-gen-validate | 3,869 |
6 | gatekeeper | 3,815 |
7 | kubeconform | 2,488 |
8 | filetype | 2,156 |
9 | kpt | 1,753 |
10 | Package govalidator | 1,331 |
11 | email-verifier | 1,331 |
12 | go-proto-validators | 1,090 |
13 | Validate | 1,089 |
14 | protovalidate | 1,043 |
15 | jsonschema | 1,021 |
16 | encoding | 1,003 |
17 | graphql-go-tools | 725 |
18 | checkmail | 720 |
19 | valgo | 445 |
20 | validating | 226 |
21 | grimoire | 164 |
22 | wiretap | 155 |
23 | gody | 124 |