{"adoption": {"forks": 45, "observed_at": "2026-08-28T04:04:10.062019+00:00", "stars": 1261}, "canonical_url": "https://ross.abutalabs.com/products/goderive", "card": {"archived": false, "artifact_type": "cli-tool", "description": "Derives and generates mundane golang functions that you do not want to maintain yourself", "domain": ["developer-tools", "programming-languages"], "enriched": true, "function": ["developer-tools", "compiler"], "health_score": 100, "homepage": null, "language": "Go", "license": "Apache-2.0", "license_family": "permissive", "maturity": "active", "member_repos": ["awalterschulze/goderive"], "name": "awalterschulze/goderive", "platform": ["go", "cli", "cross-platform"], "pushed_at": "2026-08-24T12:14:32+00:00", "repo": "awalterschulze/goderive", "stars": 1261, "tags": ["goderive", "deriving", "functional-programming", "generics", "code-generator", "boilerplate", "code-generation", "automation"], "topics": ["golang", "generator", "deriving", "functional-programming", "generics"], "urls": [], "use_cases": ["generate equality functions for Go structs", "auto-generate deep copy functions in Go", "derive sort and hash functions from types", "avoid manually maintaining boilerplate Go functions", "generate set operations like union and intersect for Go types", "derive memoization and function composition helpers"], "what_it_is": "goderive is a Go code generator that derives mundane functions (like Equal, Compare, DeepCopy, Sort, Hash) from their parameter types. It parses unimplemented functions with a 'derive' prefix and generates their implementations into a derived.gen.go file.", "when_to_avoid": ["you prefer runtime reflection or generics-only solutions without code generation", "your project disallows generated code files", "you need dynamic behavior that cannot be derived at build time"], "when_to_choose": ["you write Go and want type-derived boilerplate functions generated automatically", "you prefer generated code over reflection for performance", "you want a Haskell-style deriving workflow in Go"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/goderive", "repo": "awalterschulze/goderive", "role": "main", "score": 87}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:04:10.062019+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T05:04:17.564055+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9fa376cf73039880f6f99a79599aaf6016a818c7bc25b645de32b235d3cc162e", "fetched_at": "2026-08-28T04:04:10.062019+00:00", "kind": "readme", "missing": false, "url": "https://github.com/awalterschulze/goderive"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:04:10.062019+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T05:04:17.564055+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9fa376cf73039880f6f99a79599aaf6016a818c7bc25b645de32b235d3cc162e", "fetched_at": "2026-08-28T04:04:10.062019+00:00", "kind": "readme", "missing": false, "url": "https://github.com/awalterschulze/goderive"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T05:04:17.564055+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9fa376cf73039880f6f99a79599aaf6016a818c7bc25b645de32b235d3cc162e", "fetched_at": "2026-08-28T04:04:10.062019+00:00", "kind": "readme", "missing": false, "url": "https://github.com/awalterschulze/goderive"}], "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:04:10.062019+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:04:10.062019+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:04:10.062019+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T05:04:17.564055+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9fa376cf73039880f6f99a79599aaf6016a818c7bc25b645de32b235d3cc162e", "fetched_at": "2026-08-28T04:04:10.062019+00:00", "kind": "readme", "missing": false, "url": "https://github.com/awalterschulze/goderive"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:04:10.062019+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:04:10.062019+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T05:04:17.564055+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9fa376cf73039880f6f99a79599aaf6016a818c7bc25b645de32b235d3cc162e", "fetched_at": "2026-08-28T04:04:10.062019+00:00", "kind": "readme", "missing": false, "url": "https://github.com/awalterschulze/goderive"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:04:10.062019+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:04:10.062019+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:04:10.062019+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T05:04:17.564055+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9fa376cf73039880f6f99a79599aaf6016a818c7bc25b645de32b235d3cc162e", "fetched_at": "2026-08-28T04:04:10.062019+00:00", "kind": "readme", "missing": false, "url": "https://github.com/awalterschulze/goderive"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:04:10.062019+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:04:10.062019+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T05:04:17.564055+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9fa376cf73039880f6f99a79599aaf6016a818c7bc25b645de32b235d3cc162e", "fetched_at": "2026-08-28T04:04:10.062019+00:00", "kind": "readme", "missing": false, "url": "https://github.com/awalterschulze/goderive"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T05:04:17.564055+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9fa376cf73039880f6f99a79599aaf6016a818c7bc25b645de32b235d3cc162e", "fetched_at": "2026-08-28T04:04:10.062019+00:00", "kind": "readme", "missing": false, "url": "https://github.com/awalterschulze/goderive"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T05:04:17.564055+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9fa376cf73039880f6f99a79599aaf6016a818c7bc25b645de32b235d3cc162e", "fetched_at": "2026-08-28T04:04:10.062019+00:00", "kind": "readme", "missing": false, "url": "https://github.com/awalterschulze/goderive"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T05:04:17.564055+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9fa376cf73039880f6f99a79599aaf6016a818c7bc25b645de32b235d3cc162e", "fetched_at": "2026-08-28T04:04:10.062019+00:00", "kind": "readme", "missing": false, "url": "https://github.com/awalterschulze/goderive"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 99, "longevity": 100, "rhythm": 64}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 3491, "days_push": 9, "days_rel": 29, "gap_med": 283.0, "n_releases_24m": 3}, "score": 87, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}