{"adoption": {"forks": 39, "observed_at": "2026-08-28T04:04:07.586451+00:00", "stars": 1247}, "canonical_url": "https://ross.abutalabs.com/products/rails-pg-extras", "card": {"archived": false, "artifact_type": "library", "description": "Rails PostgreSQL database performance insights. Locks, index usage, buffer cache hit ratios, vacuum stats and more.", "domain": ["databases", "developer-tools", "performance", "web-development"], "enriched": true, "function": ["database", "monitoring", "developer-tools"], "health_score": 73, "homepage": null, "language": "Ruby", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["pawurb/rails-pg-extras"], "name": "pawurb/rails-pg-extras", "platform": ["ruby"], "pushed_at": "2026-06-16T22:29:27+00:00", "repo": "pawurb/rails-pg-extras", "stars": 1247, "tags": ["postgresql", "rails", "activerecord", "database-performance", "diagnostics", "rake-tasks"], "topics": ["rails", "postgresql", "activerecord"], "urls": [], "use_cases": ["diagnose slow postgres queries in a rails app", "check index usage and missing indexes in postgresql", "inspect database locks and blocking queries", "monitor buffer cache hit ratio and vacuum stats", "find most expensive sql queries with pg_stat_statements", "integrate postgres health checks into monitoring tasks"], "what_it_is": "A Ruby gem providing PostgreSQL performance diagnostics for Rails applications, ported from Heroku PG Extras. It exposes rake tasks, a Ruby API, and an optional web UI for queries about locks, index usage, buffer cache hit ratios, vacuum stats, and slow queries.", "when_to_avoid": ["your app is not on Rails or Ruby (use ruby-pg-extras or the Node/Rust/Elixir/Python ports instead)", "you need full continuous database observability rather than on-demand diagnostics", "you use a database other than PostgreSQL"], "when_to_choose": ["you run a Ruby on Rails app on PostgreSQL and need performance insights without Heroku's plugin", "you want a scriptable Ruby API plus optional web UI for database diagnostics", "you need quick rake-task-based access to pg_stat_statements, locks, and cache stats"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/rails-pg-extras", "repo": "pawurb/rails-pg-extras", "role": "main", "score": 71}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:04:07.586451+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T05:07:58.552731+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3ae6f3b7d06b908a1d13f9ed4954ac57316d87a7507b85d815b5c945b2dd6298", "fetched_at": "2026-08-28T04:04:07.586451+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pawurb/rails-pg-extras"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:04:07.586451+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T05:07:58.552731+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3ae6f3b7d06b908a1d13f9ed4954ac57316d87a7507b85d815b5c945b2dd6298", "fetched_at": "2026-08-28T04:04:07.586451+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pawurb/rails-pg-extras"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T05:07:58.552731+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3ae6f3b7d06b908a1d13f9ed4954ac57316d87a7507b85d815b5c945b2dd6298", "fetched_at": "2026-08-28T04:04:07.586451+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pawurb/rails-pg-extras"}], "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:07.586451+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:04:07.586451+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:04:07.586451+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T05:07:58.552731+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3ae6f3b7d06b908a1d13f9ed4954ac57316d87a7507b85d815b5c945b2dd6298", "fetched_at": "2026-08-28T04:04:07.586451+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pawurb/rails-pg-extras"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:04:07.586451+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:04:07.586451+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T05:07:58.552731+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3ae6f3b7d06b908a1d13f9ed4954ac57316d87a7507b85d815b5c945b2dd6298", "fetched_at": "2026-08-28T04:04:07.586451+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pawurb/rails-pg-extras"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:04:07.586451+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:04:07.586451+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:04:07.586451+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T05:07:58.552731+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3ae6f3b7d06b908a1d13f9ed4954ac57316d87a7507b85d815b5c945b2dd6298", "fetched_at": "2026-08-28T04:04:07.586451+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pawurb/rails-pg-extras"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:04:07.586451+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:04:07.586451+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T05:07:58.552731+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3ae6f3b7d06b908a1d13f9ed4954ac57316d87a7507b85d815b5c945b2dd6298", "fetched_at": "2026-08-28T04:04:07.586451+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pawurb/rails-pg-extras"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T05:07:58.552731+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3ae6f3b7d06b908a1d13f9ed4954ac57316d87a7507b85d815b5c945b2dd6298", "fetched_at": "2026-08-28T04:04:07.586451+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pawurb/rails-pg-extras"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T05:07:58.552731+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3ae6f3b7d06b908a1d13f9ed4954ac57316d87a7507b85d815b5c945b2dd6298", "fetched_at": "2026-08-28T04:04:07.586451+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pawurb/rails-pg-extras"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T05:07:58.552731+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3ae6f3b7d06b908a1d13f9ed4954ac57316d87a7507b85d815b5c945b2dd6298", "fetched_at": "2026-08-28T04:04:07.586451+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pawurb/rails-pg-extras"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 87, "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": 2443, "days_push": 78, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 71, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}