{"adoption": {"forks": 236, "observed_at": "2026-08-28T04:08:07.468646+00:00", "stars": 3499}, "canonical_url": "https://ross.abutalabs.com/products/rubycritic", "card": {"archived": false, "artifact_type": "library", "description": "A Ruby code quality reporter", "domain": ["developer-tools", "testing", "programming-languages"], "enriched": true, "function": ["linter", "developer-tools", "code-review"], "health_score": 73, "homepage": null, "language": "Ruby", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["whitesmith/rubycritic"], "name": "whitesmith/rubycritic", "platform": ["ruby", "cli"], "pushed_at": "2026-06-24T17:49:03+00:00", "repo": "whitesmith/rubycritic", "stars": 3499, "tags": ["static-analysis", "code-quality", "ruby-gem", "code-smells", "metrics"], "topics": ["ruby", "static-analysis", "quality-reporter", "metrics", "best-practices"], "urls": [], "use_cases": ["generate a code quality report for my ruby project", "find code smells in my ruby codebase", "check complexity of ruby methods before merging", "compare uncommitted ruby changes against last commit for quality regressions", "integrate static analysis into a rake task or CI pipeline", "visualize which ruby files have the most smells"], "what_it_is": "RubyCritic is a Ruby gem that wraps static analysis tools like Reek, Flay, and Flog to generate a quality report of Ruby code. It provides an HTML overview of code smells, complexity metrics, and can compare uncommitted changes against the last commit.", "when_to_avoid": ["you need static analysis for languages other than Ruby", "you need runtime profiling or dynamic analysis rather than static analysis", "you need auto-fixing of code smells rather than reporting"], "when_to_choose": ["you maintain a Ruby codebase and want aggregated static analysis with an HTML report", "you want to track code quality trends using Git, Mercurial, or Perforce diffs", "you want a unified view over Reek, Flay, and Flog output"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/rubycritic", "repo": "whitesmith/rubycritic", "role": "main", "score": 72}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:08:07.468646+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T18:35:50.552153+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f6bf536f7d0711184e68fb5d3c67f21aed9743270360c73eb20f3ec7698e252d", "fetched_at": "2026-08-28T04:08:07.468646+00:00", "kind": "readme", "missing": false, "url": "https://github.com/whitesmith/rubycritic"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:08:07.468646+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T18:35:50.552153+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f6bf536f7d0711184e68fb5d3c67f21aed9743270360c73eb20f3ec7698e252d", "fetched_at": "2026-08-28T04:08:07.468646+00:00", "kind": "readme", "missing": false, "url": "https://github.com/whitesmith/rubycritic"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T18:35:50.552153+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f6bf536f7d0711184e68fb5d3c67f21aed9743270360c73eb20f3ec7698e252d", "fetched_at": "2026-08-28T04:08:07.468646+00:00", "kind": "readme", "missing": false, "url": "https://github.com/whitesmith/rubycritic"}], "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:07.468646+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:08:07.468646+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:08:07.468646+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T18:35:50.552153+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f6bf536f7d0711184e68fb5d3c67f21aed9743270360c73eb20f3ec7698e252d", "fetched_at": "2026-08-28T04:08:07.468646+00:00", "kind": "readme", "missing": false, "url": "https://github.com/whitesmith/rubycritic"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:08:07.468646+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:08:07.468646+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T18:35:50.552153+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f6bf536f7d0711184e68fb5d3c67f21aed9743270360c73eb20f3ec7698e252d", "fetched_at": "2026-08-28T04:08:07.468646+00:00", "kind": "readme", "missing": false, "url": "https://github.com/whitesmith/rubycritic"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:08:07.468646+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:08:07.468646+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:08:07.468646+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T18:35:50.552153+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f6bf536f7d0711184e68fb5d3c67f21aed9743270360c73eb20f3ec7698e252d", "fetched_at": "2026-08-28T04:08:07.468646+00:00", "kind": "readme", "missing": false, "url": "https://github.com/whitesmith/rubycritic"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:08:07.468646+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:08:07.468646+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T18:35:50.552153+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f6bf536f7d0711184e68fb5d3c67f21aed9743270360c73eb20f3ec7698e252d", "fetched_at": "2026-08-28T04:08:07.468646+00:00", "kind": "readme", "missing": false, "url": "https://github.com/whitesmith/rubycritic"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T18:35:50.552153+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f6bf536f7d0711184e68fb5d3c67f21aed9743270360c73eb20f3ec7698e252d", "fetched_at": "2026-08-28T04:08:07.468646+00:00", "kind": "readme", "missing": false, "url": "https://github.com/whitesmith/rubycritic"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T18:35:50.552153+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f6bf536f7d0711184e68fb5d3c67f21aed9743270360c73eb20f3ec7698e252d", "fetched_at": "2026-08-28T04:08:07.468646+00:00", "kind": "readme", "missing": false, "url": "https://github.com/whitesmith/rubycritic"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T18:35:50.552153+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f6bf536f7d0711184e68fb5d3c67f21aed9743270360c73eb20f3ec7698e252d", "fetched_at": "2026-08-28T04:08:07.468646+00:00", "kind": "readme", "missing": false, "url": "https://github.com/whitesmith/rubycritic"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 89, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": ["no_releases"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 4711, "days_push": 70, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 72, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}