{"adoption": {"forks": 244, "observed_at": "2026-08-28T04:08:36.073407+00:00", "stars": 4129}, "canonical_url": "https://ross.abutalabs.com/products/ozzo-validation", "card": {"archived": false, "artifact_type": "library", "description": "An idiomatic Go (golang) validation package. Supports configurable and extensible validation rules (validators) using normal language constructs instead of error-prone struct tags.", "domain": ["backend", "web-development", "developer-tools"], "enriched": true, "function": ["form-handling", "developer-tools"], "health_score": 100, "homepage": null, "language": "Go", "license": "MIT", "license_family": "permissive", "maturity": "stable", "member_repos": ["go-ozzo/ozzo-validation"], "name": "go-ozzo/ozzo-validation", "platform": ["go", "cross-platform"], "pushed_at": "2026-08-25T17:26:55+00:00", "repo": "go-ozzo/ozzo-validation", "stars": 4129, "tags": ["validation", "data-validation", "struct-validation", "validators", "golang-library"], "topics": ["validation", "golang", "go", "ozzo", "validator"], "urls": [], "use_cases": ["validate request payloads in a Go REST API", "validate struct fields in Go without struct tags", "validate strings, slices, maps, and custom types in Go", "create custom validation rules in Go", "translate validation error messages and codes"], "what_it_is": "ozzo-validation is an idiomatic Go package for configurable and extensible data validation. It uses normal programming constructs instead of error-prone struct tags and ships with a rich set of built-in rules plus easy custom rule creation.", "when_to_avoid": ["you prefer declarative struct-tag validation like go-playground/validator", "you are not working in Go"], "when_to_choose": ["you want code-based, type-safe validation in Go instead of struct tags", "you need extensible rules and custom Validatable types", "you need localized or well-formatted validation errors"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/ozzo-validation", "repo": "go-ozzo/ozzo-validation", "role": "main", "score": 98}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:08:36.073407+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T18:23:03.565085+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "746897cd0c4e5cec805a1ddfba49546d657f097bea970ff4dad8772c5ee559b0", "fetched_at": "2026-08-28T04:08:36.073407+00:00", "kind": "readme", "missing": false, "url": "https://github.com/go-ozzo/ozzo-validation"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:08:36.073407+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T18:23:03.565085+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "746897cd0c4e5cec805a1ddfba49546d657f097bea970ff4dad8772c5ee559b0", "fetched_at": "2026-08-28T04:08:36.073407+00:00", "kind": "readme", "missing": false, "url": "https://github.com/go-ozzo/ozzo-validation"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T18:23:03.565085+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "746897cd0c4e5cec805a1ddfba49546d657f097bea970ff4dad8772c5ee559b0", "fetched_at": "2026-08-28T04:08:36.073407+00:00", "kind": "readme", "missing": false, "url": "https://github.com/go-ozzo/ozzo-validation"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:08:36.073407+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:08:36.073407+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:08:36.073407+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T18:23:03.565085+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "746897cd0c4e5cec805a1ddfba49546d657f097bea970ff4dad8772c5ee559b0", "fetched_at": "2026-08-28T04:08:36.073407+00:00", "kind": "readme", "missing": false, "url": "https://github.com/go-ozzo/ozzo-validation"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:08:36.073407+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:08:36.073407+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T18:23:03.565085+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "746897cd0c4e5cec805a1ddfba49546d657f097bea970ff4dad8772c5ee559b0", "fetched_at": "2026-08-28T04:08:36.073407+00:00", "kind": "readme", "missing": false, "url": "https://github.com/go-ozzo/ozzo-validation"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:08:36.073407+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:08:36.073407+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:08:36.073407+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T18:23:03.565085+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "746897cd0c4e5cec805a1ddfba49546d657f097bea970ff4dad8772c5ee559b0", "fetched_at": "2026-08-28T04:08:36.073407+00:00", "kind": "readme", "missing": false, "url": "https://github.com/go-ozzo/ozzo-validation"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:08:36.073407+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:08:36.073407+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T18:23:03.565085+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "746897cd0c4e5cec805a1ddfba49546d657f097bea970ff4dad8772c5ee559b0", "fetched_at": "2026-08-28T04:08:36.073407+00:00", "kind": "readme", "missing": false, "url": "https://github.com/go-ozzo/ozzo-validation"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T18:23:03.565085+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "746897cd0c4e5cec805a1ddfba49546d657f097bea970ff4dad8772c5ee559b0", "fetched_at": "2026-08-28T04:08:36.073407+00:00", "kind": "readme", "missing": false, "url": "https://github.com/go-ozzo/ozzo-validation"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T18:23:03.565085+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "746897cd0c4e5cec805a1ddfba49546d657f097bea970ff4dad8772c5ee559b0", "fetched_at": "2026-08-28T04:08:36.073407+00:00", "kind": "readme", "missing": false, "url": "https://github.com/go-ozzo/ozzo-validation"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T18:23:03.565085+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "746897cd0c4e5cec805a1ddfba49546d657f097bea970ff4dad8772c5ee559b0", "fetched_at": "2026-08-28T04:08:36.073407+00:00", "kind": "readme", "missing": false, "url": "https://github.com/go-ozzo/ozzo-validation"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 99, "longevity": 100, "rhythm": 96}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 3724, "days_push": 8, "days_rel": 29, "gap_med": 0, "n_releases_24m": 2}, "score": 98, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}