{"adoption": {"forks": 774, "observed_at": "2026-08-28T04:10:02.481183+00:00", "stars": 7696}, "canonical_url": "https://ross.abutalabs.com/products/swiftdate", "card": {"archived": false, "artifact_type": "library", "description": "🐔 Toolkit to parse, validate, manipulate, compare and display dates, time & timezones in Swift.", "domain": ["developer-tools", "cross-platform"], "enriched": true, "function": ["date-time", "parser"], "health_score": 20, "homepage": null, "language": "Swift", "license": "MIT", "license_family": "permissive", "maturity": "stable", "member_repos": ["malcommac/SwiftDate"], "name": "malcommac/SwiftDate", "platform": ["cross-platform"], "pushed_at": "2023-09-19T09:59:48+00:00", "repo": "malcommac/SwiftDate", "stars": 7696, "tags": ["date-manipulation", "date-parsing", "date-formatting", "timezone", "calendar", "codable", "time-periods", "relative-dates", "swift", "ios", "macos", "linux"], "topics": ["nsdate-category", "swiftdate", "date", "date-formatting", "date-time", "timezone", "nsdate", "swift"], "urls": [], "use_cases": ["parse date strings in custom or ISO8601 formats in Swift", "format and display dates with timezones and locales in an iOS app", "do date math like adding hours and minutes to a date in Swift", "check if two dates are today, tomorrow, or in the same week", "convert dates between timezones and calendars", "generate relative date strings like '2 hours ago' in Swift", "generate random dates or enumerate date ranges in Swift"], "what_it_is": "SwiftDate is a Swift library for parsing, validating, manipulating, comparing, and formatting dates, times, and timezones across Apple platforms and Linux. It offers expressive syntax for date math, component extraction, derived dates, region-aware creation (timezone/calendar/locale), colloquial formatting in 140+ languages, and time period support.", "when_to_avoid": ["Your project is not in Swift (the library targets Swift/Apple platforms and Linux)", "You only need trivial date handling that Foundation's Date and DateFormatter already cover and want zero extra dependencies", "You require a dependency with very recent release activity, as the latest release dates to September 2023"], "when_to_choose": ["You are building an iOS, macOS, or server-side Swift (Vapor/Kitura) app that needs rich date parsing, manipulation, or formatting beyond Foundation's basics", "You need colloquial/relative date formatting across many languages and locales", "You want an expressive, well-tested API for timezone, calendar, and time-period logic in Swift"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/swiftdate", "repo": "malcommac/SwiftDate", "role": "main", "score": 23}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:10:02.481183+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T17:36:00.757547+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1dc42ca7e85cbae4b7f5f1f2ce62882036d51c182812516f519876778a59a0f4", "fetched_at": "2026-08-28T04:10:02.481183+00:00", "kind": "readme", "missing": false, "url": "https://github.com/malcommac/SwiftDate"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:10:02.481183+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T17:36:00.757547+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1dc42ca7e85cbae4b7f5f1f2ce62882036d51c182812516f519876778a59a0f4", "fetched_at": "2026-08-28T04:10:02.481183+00:00", "kind": "readme", "missing": false, "url": "https://github.com/malcommac/SwiftDate"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T17:36:00.757547+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1dc42ca7e85cbae4b7f5f1f2ce62882036d51c182812516f519876778a59a0f4", "fetched_at": "2026-08-28T04:10:02.481183+00:00", "kind": "readme", "missing": false, "url": "https://github.com/malcommac/SwiftDate"}], "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:10:02.481183+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:10:02.481183+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:10:02.481183+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T17:36:00.757547+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1dc42ca7e85cbae4b7f5f1f2ce62882036d51c182812516f519876778a59a0f4", "fetched_at": "2026-08-28T04:10:02.481183+00:00", "kind": "readme", "missing": false, "url": "https://github.com/malcommac/SwiftDate"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:10:02.481183+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:10:02.481183+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T17:36:00.757547+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1dc42ca7e85cbae4b7f5f1f2ce62882036d51c182812516f519876778a59a0f4", "fetched_at": "2026-08-28T04:10:02.481183+00:00", "kind": "readme", "missing": false, "url": "https://github.com/malcommac/SwiftDate"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:10:02.481183+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:10:02.481183+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:10:02.481183+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T17:36:00.757547+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1dc42ca7e85cbae4b7f5f1f2ce62882036d51c182812516f519876778a59a0f4", "fetched_at": "2026-08-28T04:10:02.481183+00:00", "kind": "readme", "missing": false, "url": "https://github.com/malcommac/SwiftDate"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:10:02.481183+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:10:02.481183+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T17:36:00.757547+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1dc42ca7e85cbae4b7f5f1f2ce62882036d51c182812516f519876778a59a0f4", "fetched_at": "2026-08-28T04:10:02.481183+00:00", "kind": "readme", "missing": false, "url": "https://github.com/malcommac/SwiftDate"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T17:36:00.757547+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1dc42ca7e85cbae4b7f5f1f2ce62882036d51c182812516f519876778a59a0f4", "fetched_at": "2026-08-28T04:10:02.481183+00:00", "kind": "readme", "missing": false, "url": "https://github.com/malcommac/SwiftDate"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T17:36:00.757547+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1dc42ca7e85cbae4b7f5f1f2ce62882036d51c182812516f519876778a59a0f4", "fetched_at": "2026-08-28T04:10:02.481183+00:00", "kind": "readme", "missing": false, "url": "https://github.com/malcommac/SwiftDate"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T17:36:00.757547+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1dc42ca7e85cbae4b7f5f1f2ce62882036d51c182812516f519876778a59a0f4", "fetched_at": "2026-08-28T04:10:02.481183+00:00", "kind": "readme", "missing": false, "url": "https://github.com/malcommac/SwiftDate"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 8}, "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": 4137, "days_push": 1079, "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}}