ページ内ナビ
概要
go-playground/validatorはGoのstructとfieldをtagベースで検証するlibraryです。field単体だけでなくcross-field/cross-struct、slice・array・mapのdive、map key/value、custom field type、alias tag、i18n対応error messageを扱えます。
特徴と向いている用途
公式資料に基づく紹介・実機未検証 · 内容確認日:
主な特徴
struct tagでfield validationとcross-field ruleを宣言する
required、range、network/string系などのbuilt-in validation tagをstruct fieldへ付与し、同一struct内やnested struct間の値関係もvalidationできます。
出典:[2]
slice・mapへdiveしcustom validatorやtranslated errorを組み合わせる
collectionの多段dive、map key/value validation、custom field type、alias tag、JSON field名等の抽出、locale別error translationを組み合わせられます。
出典:[2]
向いている用途
HTTP request DTOやdomain inputのvalidation ruleを共通化したいGo backendに向く
API request、config input、command object等で同じvalidation ruleを再利用し、handler/serviceから条件分岐を減らしたい場合に適します。Ginのdefault validatorとしても利用されています。
出典:[2]
導入前の確認
参考にした公式資料
- [1]go-playground/validator — GitHub repository(2026-10-06)
- [2]Validator v10.30.5 — README(2026-10-06)
- [3]Validator v10.30.5 — go.mod(2026-10-06)
- [4]Validator v10.30.5 release(2026-10-06)
- [5]Validator MIT license(2026-10-06)
編集部からの補足
request DTOやdomain inputのvalidationをtag中心で共通化できます。v11でrequired struct behaviorのdefault変更が予定されているため、新規導入ではWithRequiredStructEnabledを有効にして将来挙動へ寄せるのが安全です。
3ステップで試す
- 1
ソースを取得
git clone --depth 1 https://github.com/go-playground/validator.git - 2
リポジトリへ移動
cd validator - 3
公式手順を確認
READMEのInstallation / Quick Start / Getting Startedにある公式コマンドを続けて実行してください。
find . -maxdepth 1 -iname 'README*' -exec sed -n '1,220p' {} \; -quit
成長
成長の推移 · 直近30日
20,194 Stars
推移データを蓄積中です。
開発アクティビティ
直近90日・週次
- Commit(直近30日)
- 12
- Open PR
- 101
開発アクティビティを蓄積中です。
Built with
カテゴリとタグ
GitHubデータ
関連情報
関連記事を投稿するこのOSSの使い方や活用事例をMarkdownで投稿できます。管理者が承認した後に公開されます。
あわせて探訪
- Fiber40,204 Stars
共通タグ 2件 · 共通カテゴリ 1件 · 同じ言語
fasthttp上でExpress風Routing・Binding・MiddlewareをまとめるGo Web Framework
Go - Echo32,754 Stars
共通タグ 2件 · 共通カテゴリ 1件 · 同じ言語
Go標準のnet/httpを土台にルーティング・ミドルウェア・エラー処理をまとめるWebフレームワーク
Go - gRPC-Go23,092 Stars
共通タグ 2件 · 共通カテゴリ 1件 · 同じ言語
Protocol BuffersとHTTP/2でGo service間のtyped RPCを実装するgRPC runtime
Go - Chi22,929 Stars
共通タグ 2件 · 共通カテゴリ 1件 · 同じ言語
net/http互換を保ったままRoute group・Middlewareを組み合わせるGo HTTP Router
Go - Apache Casbin20,433 Stars
共通タグ 2件 · 共通カテゴリ 1件 · 同じ言語
ACL・RBAC・ABACをpolicy modelとしてapplicationから分離するGo authorization library
Go - imgproxy11,109 Stars
共通タグ 2件 · 共通カテゴリ 1件 · 同じ言語
applicationのimage processingを独立HTTP serviceへoffloadする
Go
情報の誤りを報告
掲載内容に誤りや古い情報があればお知らせください。