{"adoption": {"forks": 1315, "observed_at": "2026-08-28T04:10:39.695865+00:00", "stars": 10151}, "canonical_url": "https://ross.abutalabs.com/products/go-clean-arch", "card": {"archived": false, "artifact_type": "learning-resource", "description": "Go (Golang) Clean Architecture based on Reading Uncle Bob's Clean Architecture", "domain": ["web-development", "backend", "developer-tools", "tutorials"], "enriched": true, "function": ["web-framework", "database", "developer-tools"], "health_score": 20, "homepage": null, "language": "Go", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["bxcodec/go-clean-arch"], "name": "bxcodec/go-clean-arch", "platform": ["go", "cross-platform"], "pushed_at": "2024-04-24T04:15:38+00:00", "repo": "bxcodec/go-clean-arch", "stars": 10151, "tags": ["clean-architecture", "golang", "project-template", "example-project", "layered-architecture", "mysql", "uncle-bob"], "topics": ["architecture", "golang", "sql", "database", "article", "mysql", "clean-architecture", "go"], "urls": [], "use_cases": ["structure a golang rest api with clean architecture", "learn how to layer repository usecase and delivery in go", "find a clean architecture project template for go", "see how to keep business logic independent of frameworks and database", "example of mysql repository layer in golang", "compare clean architecture versions for go projects"], "what_it_is": "A well-known example implementation of Uncle Bob's Clean Architecture in Go, structured into models, repository, usecase, and delivery layers. It serves as a reference template and tutorial for organizing Go backend projects, with multiple versioned branches showing architectural evolution.", "when_to_avoid": ["you need a production framework with batteries included rather than an example skeleton", "your project is small enough that layered architecture adds unnecessary overhead", "you need a non-SQL or non-HTTP stack without adapting the example"], "when_to_choose": ["starting a new Go backend project and wanting a proven layered structure", "learning Clean Architecture principles with concrete Go code", "looking for a reference to justify package boundaries in code review"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/go-clean-arch", "repo": "bxcodec/go-clean-arch", "role": "main", "score": 23}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:10:39.695865+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T17:19:40.855088+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5aac7af55b0814630b913b3d27ed65dcf6f2bbf5496d5e71f856274640fec3cf", "fetched_at": "2026-08-28T04:10:39.695865+00:00", "kind": "readme", "missing": false, "url": "https://github.com/bxcodec/go-clean-arch"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:10:39.695865+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T17:19:40.855088+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5aac7af55b0814630b913b3d27ed65dcf6f2bbf5496d5e71f856274640fec3cf", "fetched_at": "2026-08-28T04:10:39.695865+00:00", "kind": "readme", "missing": false, "url": "https://github.com/bxcodec/go-clean-arch"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T17:19:40.855088+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5aac7af55b0814630b913b3d27ed65dcf6f2bbf5496d5e71f856274640fec3cf", "fetched_at": "2026-08-28T04:10:39.695865+00:00", "kind": "readme", "missing": false, "url": "https://github.com/bxcodec/go-clean-arch"}], "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:10:39.695865+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:10:39.695865+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:10:39.695865+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T17:19:40.855088+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5aac7af55b0814630b913b3d27ed65dcf6f2bbf5496d5e71f856274640fec3cf", "fetched_at": "2026-08-28T04:10:39.695865+00:00", "kind": "readme", "missing": false, "url": "https://github.com/bxcodec/go-clean-arch"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:10:39.695865+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:10:39.695865+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T17:19:40.855088+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5aac7af55b0814630b913b3d27ed65dcf6f2bbf5496d5e71f856274640fec3cf", "fetched_at": "2026-08-28T04:10:39.695865+00:00", "kind": "readme", "missing": false, "url": "https://github.com/bxcodec/go-clean-arch"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:10:39.695865+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:10:39.695865+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:10:39.695865+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T17:19:40.855088+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5aac7af55b0814630b913b3d27ed65dcf6f2bbf5496d5e71f856274640fec3cf", "fetched_at": "2026-08-28T04:10:39.695865+00:00", "kind": "readme", "missing": false, "url": "https://github.com/bxcodec/go-clean-arch"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:10:39.695865+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:10:39.695865+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T17:19:40.855088+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5aac7af55b0814630b913b3d27ed65dcf6f2bbf5496d5e71f856274640fec3cf", "fetched_at": "2026-08-28T04:10:39.695865+00:00", "kind": "readme", "missing": false, "url": "https://github.com/bxcodec/go-clean-arch"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T17:19:40.855088+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5aac7af55b0814630b913b3d27ed65dcf6f2bbf5496d5e71f856274640fec3cf", "fetched_at": "2026-08-28T04:10:39.695865+00:00", "kind": "readme", "missing": false, "url": "https://github.com/bxcodec/go-clean-arch"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T17:19:40.855088+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5aac7af55b0814630b913b3d27ed65dcf6f2bbf5496d5e71f856274640fec3cf", "fetched_at": "2026-08-28T04:10:39.695865+00:00", "kind": "readme", "missing": false, "url": "https://github.com/bxcodec/go-clean-arch"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T17:19:40.855088+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5aac7af55b0814630b913b3d27ed65dcf6f2bbf5496d5e71f856274640fec3cf", "fetched_at": "2026-08-28T04:10:39.695865+00:00", "kind": "readme", "missing": false, "url": "https://github.com/bxcodec/go-clean-arch"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 8}, "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": 3373, "days_push": 861, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 23, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}