{"adoption": {"forks": 141, "observed_at": "2026-08-28T04:07:04.060617+00:00", "stars": 2606}, "canonical_url": "https://ross.abutalabs.com/products/timepiece", "card": {"archived": false, "artifact_type": "library", "description": "Intuitive date handling in Swift", "domain": ["developer-tools", "cross-platform"], "enriched": true, "function": ["date-time"], "health_score": 20, "homepage": null, "language": "Swift", "license": "MIT", "license_family": "permissive", "maturity": "maintenance", "member_repos": ["naoty/Timepiece"], "name": "naoty/Timepiece", "platform": [], "pushed_at": "2019-10-15T08:55:28+00:00", "repo": "naoty/Timepiece", "stars": 2606, "tags": ["swift", "date-handling", "foundation", "cocoapods", "carthage", "ios", "macos"], "topics": ["swift", "date"], "urls": [], "use_cases": ["create dates from year/month/day components in Swift", "add or subtract years, months, weeks, days, or hours from a date", "truncate a date to a specific unit like day or hour", "format dates as strings with given styles", "parse date strings from formats like yyyy/MM/dd or ISO8601", "get today's, yesterday's, or tomorrow's date"], "what_it_is": "Timepiece is a small Swift library that provides intuitive helpers for creating, calculating, changing, formatting, and parsing dates on top of Foundation. It consists of only four files and supports iOS, macOS, tvOS, and watchOS.", "when_to_avoid": ["you need a full-featured date library with time zones, calendars, or locale-heavy logic", "your project is not on Apple platforms or not written in Swift", "you need a library with active ongoing development and recent releases"], "when_to_choose": ["you want readable, expressive date arithmetic in Swift without deep Calendar/DateComponents knowledge", "you prefer a tiny, auditable dependency (only 4 files)", "you target Apple platforms and use CocoaPods or Carthage"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/timepiece", "repo": "naoty/Timepiece", "role": "main", "score": 32}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:07:04.060617+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T02:21:00.404380+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2ecf1c6c80c4230c9d383abb7b6ca83526691f9ad721ed36f7da38f585043021", "fetched_at": "2026-08-28T04:07:04.060617+00:00", "kind": "readme", "missing": false, "url": "https://github.com/naoty/Timepiece"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:07:04.060617+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T02:21:00.404380+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2ecf1c6c80c4230c9d383abb7b6ca83526691f9ad721ed36f7da38f585043021", "fetched_at": "2026-08-28T04:07:04.060617+00:00", "kind": "readme", "missing": false, "url": "https://github.com/naoty/Timepiece"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T02:21:00.404380+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2ecf1c6c80c4230c9d383abb7b6ca83526691f9ad721ed36f7da38f585043021", "fetched_at": "2026-08-28T04:07:04.060617+00:00", "kind": "readme", "missing": false, "url": "https://github.com/naoty/Timepiece"}], "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:07:04.060617+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:07:04.060617+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:07:04.060617+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T02:21:00.404380+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2ecf1c6c80c4230c9d383abb7b6ca83526691f9ad721ed36f7da38f585043021", "fetched_at": "2026-08-28T04:07:04.060617+00:00", "kind": "readme", "missing": false, "url": "https://github.com/naoty/Timepiece"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:07:04.060617+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:07:04.060617+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T02:21:00.404380+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2ecf1c6c80c4230c9d383abb7b6ca83526691f9ad721ed36f7da38f585043021", "fetched_at": "2026-08-28T04:07:04.060617+00:00", "kind": "readme", "missing": false, "url": "https://github.com/naoty/Timepiece"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:07:04.060617+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:07:04.060617+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:07:04.060617+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T02:21:00.404380+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2ecf1c6c80c4230c9d383abb7b6ca83526691f9ad721ed36f7da38f585043021", "fetched_at": "2026-08-28T04:07:04.060617+00:00", "kind": "readme", "missing": false, "url": "https://github.com/naoty/Timepiece"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:07:04.060617+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:07:04.060617+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T02:21:00.404380+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2ecf1c6c80c4230c9d383abb7b6ca83526691f9ad721ed36f7da38f585043021", "fetched_at": "2026-08-28T04:07:04.060617+00:00", "kind": "readme", "missing": false, "url": "https://github.com/naoty/Timepiece"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T02:21:00.404380+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2ecf1c6c80c4230c9d383abb7b6ca83526691f9ad721ed36f7da38f585043021", "fetched_at": "2026-08-28T04:07:04.060617+00:00", "kind": "readme", "missing": false, "url": "https://github.com/naoty/Timepiece"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T02:21:00.404380+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2ecf1c6c80c4230c9d383abb7b6ca83526691f9ad721ed36f7da38f585043021", "fetched_at": "2026-08-28T04:07:04.060617+00:00", "kind": "readme", "missing": false, "url": "https://github.com/naoty/Timepiece"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T02:21:00.404380+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2ecf1c6c80c4230c9d383abb7b6ca83526691f9ad721ed36f7da38f585043021", "fetched_at": "2026-08-28T04:07:04.060617+00:00", "kind": "readme", "missing": false, "url": "https://github.com/naoty/Timepiece"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["no_releases"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 4400, "days_push": 2514, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 32, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}