{"adoption": {"forks": 111, "observed_at": "2026-08-28T04:05:57.568107+00:00", "stars": 1943}, "canonical_url": "https://ross.abutalabs.com/products/onevcat-rainbow", "card": {"archived": false, "artifact_type": "library", "description": "Delightful console output for Swift developers.", "domain": ["developer-tools", "cross-platform"], "enriched": true, "function": ["logging", "developer-tools", "cli"], "health_score": 94, "homepage": null, "language": "Swift", "license": "MIT", "license_family": "permissive", "maturity": "stable", "member_repos": ["onevcat/Rainbow"], "name": "onevcat/Rainbow", "platform": ["windows"], "pushed_at": "2026-08-10T11:28:56+00:00", "repo": "onevcat/Rainbow", "stars": 1943, "tags": ["ansi-colors", "console-output", "string-extension", "terminal", "swift-package-manager", "command-line", "macos", "linux", "swift"], "topics": ["swift", "console", "log", "output", "ansi"], "urls": [], "use_cases": ["colorize terminal output in a Swift CLI tool", "add colored log messages to a cross-platform Swift app", "print styled text with bold, underline, or blinking effects", "use 8-bit, 24-bit, hex, or HSL colors in console output", "build a command-line tool with readable colored status messages"], "what_it_is": "Rainbow is a Swift library that adds text color, background color, and style to console and command line output via convenient String extensions. It supports ANSI escape codes across Apple platforms, Linux, and Windows, with SPM integration.", "when_to_avoid": ["you need structured logging with levels, sinks, or file output rather than simple styling", "your target output is not a terminal (e.g., GUI apps or web)", "you are not working in Swift"], "when_to_choose": ["you are writing a Swift command-line or server-side tool and want easy ANSI color output", "you need cross-platform terminal styling on macOS, Linux, and Windows", "you prefer a lightweight String-extension API with SPM support"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/onevcat-rainbow", "repo": "onevcat/Rainbow", "role": "main", "score": 77}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:05:57.568107+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T03:08:02.540189+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "345d5df1f2e4c3ddd445ac1313d18d73446170dd3a9e29b5ab68a8a3712373a5", "fetched_at": "2026-08-28T04:05:57.568107+00:00", "kind": "readme", "missing": false, "url": "https://github.com/onevcat/Rainbow"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:05:57.568107+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T03:08:02.540189+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "345d5df1f2e4c3ddd445ac1313d18d73446170dd3a9e29b5ab68a8a3712373a5", "fetched_at": "2026-08-28T04:05:57.568107+00:00", "kind": "readme", "missing": false, "url": "https://github.com/onevcat/Rainbow"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T03:08:02.540189+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "345d5df1f2e4c3ddd445ac1313d18d73446170dd3a9e29b5ab68a8a3712373a5", "fetched_at": "2026-08-28T04:05:57.568107+00:00", "kind": "readme", "missing": false, "url": "https://github.com/onevcat/Rainbow"}], "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:57.568107+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:05:57.568107+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:05:57.568107+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T03:08:02.540189+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "345d5df1f2e4c3ddd445ac1313d18d73446170dd3a9e29b5ab68a8a3712373a5", "fetched_at": "2026-08-28T04:05:57.568107+00:00", "kind": "readme", "missing": false, "url": "https://github.com/onevcat/Rainbow"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:05:57.568107+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:05:57.568107+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T03:08:02.540189+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "345d5df1f2e4c3ddd445ac1313d18d73446170dd3a9e29b5ab68a8a3712373a5", "fetched_at": "2026-08-28T04:05:57.568107+00:00", "kind": "readme", "missing": false, "url": "https://github.com/onevcat/Rainbow"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:05:57.568107+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:05:57.568107+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:05:57.568107+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T03:08:02.540189+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "345d5df1f2e4c3ddd445ac1313d18d73446170dd3a9e29b5ab68a8a3712373a5", "fetched_at": "2026-08-28T04:05:57.568107+00:00", "kind": "readme", "missing": false, "url": "https://github.com/onevcat/Rainbow"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:05:57.568107+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:05:57.568107+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T03:08:02.540189+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "345d5df1f2e4c3ddd445ac1313d18d73446170dd3a9e29b5ab68a8a3712373a5", "fetched_at": "2026-08-28T04:05:57.568107+00:00", "kind": "readme", "missing": false, "url": "https://github.com/onevcat/Rainbow"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T03:08:02.540189+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "345d5df1f2e4c3ddd445ac1313d18d73446170dd3a9e29b5ab68a8a3712373a5", "fetched_at": "2026-08-28T04:05:57.568107+00:00", "kind": "readme", "missing": false, "url": "https://github.com/onevcat/Rainbow"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T03:08:02.540189+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "345d5df1f2e4c3ddd445ac1313d18d73446170dd3a9e29b5ab68a8a3712373a5", "fetched_at": "2026-08-28T04:05:57.568107+00:00", "kind": "readme", "missing": false, "url": "https://github.com/onevcat/Rainbow"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T03:08:02.540189+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "345d5df1f2e4c3ddd445ac1313d18d73446170dd3a9e29b5ab68a8a3712373a5", "fetched_at": "2026-08-28T04:05:57.568107+00:00", "kind": "readme", "missing": false, "url": "https://github.com/onevcat/Rainbow"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 97, "longevity": 100, "rhythm": 38}, "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": 3907, "days_push": 23, "days_rel": 257, "gap_med": 172.5, "n_releases_24m": 3}, "score": 77, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}