{"adoption": {"forks": 118, "observed_at": "2026-08-28T04:04:52.137551+00:00", "stars": 1488}, "canonical_url": "https://ross.abutalabs.com/products/steep", "card": {"archived": false, "artifact_type": "cli-tool", "description": "Static type checker for Ruby", "domain": ["programming-languages", "developer-tools", "testing"], "enriched": true, "function": ["type-system", "linter", "cli"], "health_score": 92, "homepage": null, "language": "Ruby", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["soutaro/steep"], "name": "soutaro/steep", "platform": ["ruby", "cli", "cross-platform"], "pushed_at": "2026-08-26T10:06:30+00:00", "repo": "soutaro/steep", "stars": 1488, "tags": ["ruby", "rbs", "static-analysis", "gradual-typing", "typechecker"], "topics": ["ruby", "typechecker"], "urls": [], "use_cases": ["statically type check a ruby codebase", "add gradual typing to ruby project with rbs signatures", "catch type errors in ruby before runtime", "verify ruby method signatures against implementations", "set up type checking in ci for ruby"], "what_it_is": "Steep is a static type checker for Ruby based on gradual typing, using RBS signature files and inline annotations. It is distributed as a Ruby gem with a CLI and Steepfile configuration.", "when_to_avoid": ["you want automatic type inference without writing signatures", "you prefer inline-only typing like Sorbet's RBI/RBS annotations workflow", "your Ruby version is older than 2.6"], "when_to_choose": ["you want static type checking for Ruby with explicit RBS type declarations", "your team is willing to maintain .rbs signature files", "you want gradual typing where untyped code is skipped rather than rejected"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/steep", "repo": "soutaro/steep", "role": "main", "score": 79}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:04:52.137551+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T04:33:46.253535+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "acd08839ec4026f9399242b893dca4b2e6f56f5b304a1e4b422ce8c3ea62027f", "fetched_at": "2026-08-28T04:04:52.137551+00:00", "kind": "readme", "missing": false, "url": "https://github.com/soutaro/steep"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:04:52.137551+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T04:33:46.253535+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "acd08839ec4026f9399242b893dca4b2e6f56f5b304a1e4b422ce8c3ea62027f", "fetched_at": "2026-08-28T04:04:52.137551+00:00", "kind": "readme", "missing": false, "url": "https://github.com/soutaro/steep"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T04:33:46.253535+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "acd08839ec4026f9399242b893dca4b2e6f56f5b304a1e4b422ce8c3ea62027f", "fetched_at": "2026-08-28T04:04:52.137551+00:00", "kind": "readme", "missing": false, "url": "https://github.com/soutaro/steep"}], "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:52.137551+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:04:52.137551+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:04:52.137551+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T04:33:46.253535+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "acd08839ec4026f9399242b893dca4b2e6f56f5b304a1e4b422ce8c3ea62027f", "fetched_at": "2026-08-28T04:04:52.137551+00:00", "kind": "readme", "missing": false, "url": "https://github.com/soutaro/steep"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:04:52.137551+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:04:52.137551+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T04:33:46.253535+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "acd08839ec4026f9399242b893dca4b2e6f56f5b304a1e4b422ce8c3ea62027f", "fetched_at": "2026-08-28T04:04:52.137551+00:00", "kind": "readme", "missing": false, "url": "https://github.com/soutaro/steep"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:04:52.137551+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:04:52.137551+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:04:52.137551+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T04:33:46.253535+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "acd08839ec4026f9399242b893dca4b2e6f56f5b304a1e4b422ce8c3ea62027f", "fetched_at": "2026-08-28T04:04:52.137551+00:00", "kind": "readme", "missing": false, "url": "https://github.com/soutaro/steep"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:04:52.137551+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:04:52.137551+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T04:33:46.253535+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "acd08839ec4026f9399242b893dca4b2e6f56f5b304a1e4b422ce8c3ea62027f", "fetched_at": "2026-08-28T04:04:52.137551+00:00", "kind": "readme", "missing": false, "url": "https://github.com/soutaro/steep"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T04:33:46.253535+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "acd08839ec4026f9399242b893dca4b2e6f56f5b304a1e4b422ce8c3ea62027f", "fetched_at": "2026-08-28T04:04:52.137551+00:00", "kind": "readme", "missing": false, "url": "https://github.com/soutaro/steep"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T04:33:46.253535+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "acd08839ec4026f9399242b893dca4b2e6f56f5b304a1e4b422ce8c3ea62027f", "fetched_at": "2026-08-28T04:04:52.137551+00:00", "kind": "readme", "missing": false, "url": "https://github.com/soutaro/steep"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T04:33:46.253535+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "acd08839ec4026f9399242b893dca4b2e6f56f5b304a1e4b422ce8c3ea62027f", "fetched_at": "2026-08-28T04:04:52.137551+00:00", "kind": "readme", "missing": false, "url": "https://github.com/soutaro/steep"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 99, "longevity": 100, "rhythm": 40}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 3446, "days_push": 7, "days_rel": 533, "gap_med": 9, "n_releases_24m": 10}, "score": 79, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}