{"adoption": {"forks": 194, "observed_at": "2026-08-28T04:08:09.458099+00:00", "stars": 3548}, "canonical_url": "https://ross.abutalabs.com/products/bonmot", "card": {"archived": false, "artifact_type": "library", "description": "Beautiful, easy attributed strings in Swift", "domain": ["mobile-development", "frontend", "web-design"], "enriched": true, "function": ["ui-components", "templating", "parser"], "health_score": 21, "homepage": null, "language": "Swift", "license": "MIT", "license_family": "permissive", "maturity": "maintenance", "member_repos": ["Rightpoint/BonMot"], "name": "Rightpoint/BonMot", "platform": ["cross-platform"], "pushed_at": "2024-07-21T16:21:17+00:00", "repo": "Rightpoint/BonMot", "stars": 3548, "tags": ["attributed-strings", "typography", "dynamic-type", "text-styling", "uikit", "swift", "ios", "macos", "mobile"], "topics": ["swift", "special-characters", "typography", "design", "text-formatting", "text", "auto-layout", "constraints", "dynamic-type", "xml-parsing"], "urls": [], "use_cases": ["style attributed strings in Swift", "apply consistent typography across an iOS app", "support dynamic type with custom fonts", "compose text styles with fonts, colors, and line spacing", "parse and style XML-tagged strings", "handle special characters and ligatures in text"], "what_it_is": "BonMot is a Swift library for building attributed strings with a declarative, chainable styling API across iOS, macOS, tvOS, and watchOS. It abstracts typography complexities like fonts, line height, OpenType features, special characters, and dynamic type.", "when_to_avoid": ["you target iOS 15+ and can use Apple's built-in Foundation.AttributedString", "your project is not written in Swift", "you need rich text editing rather than styled text rendering"], "when_to_choose": ["you target iOS 14 or earlier where Foundation.AttributedString is unavailable", "you want a composable, reusable text styling API in UIKit/AppKit", "you need advanced typographic controls like OpenType features and special characters"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/bonmot", "repo": "Rightpoint/BonMot", "role": "main", "score": 23}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:08:09.458099+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T18:34:22.959025+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6c9874a9b148ecf940dbed28010e1ee2eac6d56a20ad7fdc4dd22814cdd58080", "fetched_at": "2026-08-28T04:08:09.458099+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Rightpoint/BonMot"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:08:09.458099+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T18:34:22.959025+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6c9874a9b148ecf940dbed28010e1ee2eac6d56a20ad7fdc4dd22814cdd58080", "fetched_at": "2026-08-28T04:08:09.458099+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Rightpoint/BonMot"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T18:34:22.959025+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6c9874a9b148ecf940dbed28010e1ee2eac6d56a20ad7fdc4dd22814cdd58080", "fetched_at": "2026-08-28T04:08:09.458099+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Rightpoint/BonMot"}], "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:09.458099+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:08:09.458099+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:08:09.458099+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T18:34:22.959025+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6c9874a9b148ecf940dbed28010e1ee2eac6d56a20ad7fdc4dd22814cdd58080", "fetched_at": "2026-08-28T04:08:09.458099+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Rightpoint/BonMot"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:08:09.458099+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:08:09.458099+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T18:34:22.959025+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6c9874a9b148ecf940dbed28010e1ee2eac6d56a20ad7fdc4dd22814cdd58080", "fetched_at": "2026-08-28T04:08:09.458099+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Rightpoint/BonMot"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:08:09.458099+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:08:09.458099+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:08:09.458099+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T18:34:22.959025+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6c9874a9b148ecf940dbed28010e1ee2eac6d56a20ad7fdc4dd22814cdd58080", "fetched_at": "2026-08-28T04:08:09.458099+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Rightpoint/BonMot"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:08:09.458099+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:08:09.458099+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T18:34:22.959025+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6c9874a9b148ecf940dbed28010e1ee2eac6d56a20ad7fdc4dd22814cdd58080", "fetched_at": "2026-08-28T04:08:09.458099+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Rightpoint/BonMot"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T18:34:22.959025+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6c9874a9b148ecf940dbed28010e1ee2eac6d56a20ad7fdc4dd22814cdd58080", "fetched_at": "2026-08-28T04:08:09.458099+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Rightpoint/BonMot"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T18:34:22.959025+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6c9874a9b148ecf940dbed28010e1ee2eac6d56a20ad7fdc4dd22814cdd58080", "fetched_at": "2026-08-28T04:08:09.458099+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Rightpoint/BonMot"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T18:34:22.959025+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6c9874a9b148ecf940dbed28010e1ee2eac6d56a20ad7fdc4dd22814cdd58080", "fetched_at": "2026-08-28T04:08:09.458099+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Rightpoint/BonMot"}], "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": 4123, "days_push": 773, "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}}