{"adoption": {"forks": 195, "observed_at": "2026-08-28T04:05:14.555377+00:00", "stars": 1635}, "canonical_url": "https://ross.abutalabs.com/products/gendry", "card": {"archived": true, "artifact_type": "library", "description": "a golang library for sql builder", "domain": ["databases", "backend", "developer-tools"], "enriched": true, "function": ["database-driver", "orm"], "health_score": 10, "homepage": null, "language": "Go", "license": "Apache-2.0", "license_family": "permissive", "maturity": "stable", "member_repos": ["didi/gendry"], "name": "didi/gendry", "platform": ["go", "windows"], "pushed_at": "2025-03-12T03:30:45+00:00", "repo": "didi/gendry", "stars": 1635, "tags": ["sql-builder", "mysql", "query-builder", "scanner", "database/sql", "linux", "macos"], "topics": [], "urls": [], "use_cases": ["build SQL queries programmatically in Go", "initialize MySQL connection pools with driver options", "scan database rows into Go structs", "generate WHERE IN clauses with large element sets", "avoid heavyweight ORMs while still avoiding hand-written SQL", "manage database/sql dataSourceName configuration"], "what_it_is": "Gendry is a Go library for working with MySQL databases, built on go-sql-driver/mysql. It provides three composable parts—manager for building connection DSNs, builder for programmatically constructing SQL queries, and scanner for mapping query results into structs—without being a full ORM.", "when_to_avoid": ["you need a full ORM with migrations, relations, and model management", "you use a database other than MySQL", "you want schema-first code generation for complex object graphs"], "when_to_choose": ["you use MySQL with Go's database/sql and want safer, maintainable query construction", "you dislike ORMs but want help building SQL and scanning results", "you need fine control over driver parameters like charset, timeouts, and interpolateParams"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/gendry", "repo": "didi/gendry", "role": "main", "score": 10}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:05:14.555377+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T03:47:00.286252+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a2f6691d8fd5a7b1d67888ee03728fcb2cd1642f8847775f91d73e8580b1d529", "fetched_at": "2026-08-28T04:05:14.555377+00:00", "kind": "readme", "missing": false, "url": "https://github.com/didi/gendry"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:05:14.555377+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T03:47:00.286252+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a2f6691d8fd5a7b1d67888ee03728fcb2cd1642f8847775f91d73e8580b1d529", "fetched_at": "2026-08-28T04:05:14.555377+00:00", "kind": "readme", "missing": false, "url": "https://github.com/didi/gendry"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T03:47:00.286252+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a2f6691d8fd5a7b1d67888ee03728fcb2cd1642f8847775f91d73e8580b1d529", "fetched_at": "2026-08-28T04:05:14.555377+00:00", "kind": "readme", "missing": false, "url": "https://github.com/didi/gendry"}], "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:05:14.555377+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:05:14.555377+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:05:14.555377+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T03:47:00.286252+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a2f6691d8fd5a7b1d67888ee03728fcb2cd1642f8847775f91d73e8580b1d529", "fetched_at": "2026-08-28T04:05:14.555377+00:00", "kind": "readme", "missing": false, "url": "https://github.com/didi/gendry"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:05:14.555377+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:05:14.555377+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T03:47:00.286252+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a2f6691d8fd5a7b1d67888ee03728fcb2cd1642f8847775f91d73e8580b1d529", "fetched_at": "2026-08-28T04:05:14.555377+00:00", "kind": "readme", "missing": false, "url": "https://github.com/didi/gendry"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:05:14.555377+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:05:14.555377+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:05:14.555377+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T03:47:00.286252+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a2f6691d8fd5a7b1d67888ee03728fcb2cd1642f8847775f91d73e8580b1d529", "fetched_at": "2026-08-28T04:05:14.555377+00:00", "kind": "readme", "missing": false, "url": "https://github.com/didi/gendry"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:05:14.555377+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:05:14.555377+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T03:47:00.286252+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a2f6691d8fd5a7b1d67888ee03728fcb2cd1642f8847775f91d73e8580b1d529", "fetched_at": "2026-08-28T04:05:14.555377+00:00", "kind": "readme", "missing": false, "url": "https://github.com/didi/gendry"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T03:47:00.286252+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a2f6691d8fd5a7b1d67888ee03728fcb2cd1642f8847775f91d73e8580b1d529", "fetched_at": "2026-08-28T04:05:14.555377+00:00", "kind": "readme", "missing": false, "url": "https://github.com/didi/gendry"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T03:47:00.286252+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a2f6691d8fd5a7b1d67888ee03728fcb2cd1642f8847775f91d73e8580b1d529", "fetched_at": "2026-08-28T04:05:14.555377+00:00", "kind": "readme", "missing": false, "url": "https://github.com/didi/gendry"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T03:47:00.286252+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a2f6691d8fd5a7b1d67888ee03728fcb2cd1642f8847775f91d73e8580b1d529", "fetched_at": "2026-08-28T04:05:14.555377+00:00", "kind": "readme", "missing": false, "url": "https://github.com/didi/gendry"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 11, "longevity": 100, "rhythm": 8}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["archived"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 3197, "days_push": 539, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 10, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}