{"adoption": {"forks": 289, "observed_at": "2026-08-28T04:04:45.504149+00:00", "stars": 1448}, "canonical_url": "https://ross.abutalabs.com/products/fittedsheets", "card": {"archived": false, "artifact_type": "library", "description": "Bottom sheets for iOS", "domain": ["mobile-development", "frontend"], "enriched": true, "function": ["ui-components", "mobile-framework"], "health_score": 23, "homepage": null, "language": "Swift", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["gordontucker/FittedSheets"], "name": "gordontucker/FittedSheets", "platform": [], "pushed_at": "2024-09-25T01:07:03+00:00", "repo": "gordontucker/FittedSheets", "stars": 1448, "tags": ["bottom-sheet", "uikit", "modal", "swift-package", "ios", "swift", "mobile"], "topics": [], "urls": [], "use_cases": ["show a bottom sheet modal in an iOS app", "present a view controller that sizes to its content height", "add a draggable bottom sheet with multiple snap sizes", "display a scrolling bottom sheet over the current screen", "implement an inline bottom sheet inside a view", "shrink the presenting view controller like a native iOS modal"], "what_it_is": "A Swift library for iOS that lets developers present view controllers as bottom sheets with automatic intrinsic sizing, scrollview support, and multiple configurable sizes. It is distributed as a UIKit component with options for fullscreen, inline, and shrinking presentation modes.", "when_to_avoid": ["building with SwiftUI and wanting a native sheet API instead", "targeting platforms other than iOS", "you need cross-platform bottom sheet behavior"], "when_to_choose": ["building an iOS app in Swift with UIKit that needs bottom sheet presentation", "you want sheets that automatically fit intrinsic content height", "you need configurable sheet sizes, pull bars, and fullscreen/inline modes"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/fittedsheets", "repo": "gordontucker/FittedSheets", "role": "main", "score": 23}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:04:45.504149+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T04:36:03.427586+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "087c2b0b4ffe20cc3a6ff7f3a114d29e926bd1a625dea6824a69c7981ced33ed", "fetched_at": "2026-08-28T04:04:45.504149+00:00", "kind": "readme", "missing": false, "url": "https://github.com/gordontucker/FittedSheets"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:04:45.504149+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T04:36:03.427586+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "087c2b0b4ffe20cc3a6ff7f3a114d29e926bd1a625dea6824a69c7981ced33ed", "fetched_at": "2026-08-28T04:04:45.504149+00:00", "kind": "readme", "missing": false, "url": "https://github.com/gordontucker/FittedSheets"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T04:36:03.427586+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "087c2b0b4ffe20cc3a6ff7f3a114d29e926bd1a625dea6824a69c7981ced33ed", "fetched_at": "2026-08-28T04:04:45.504149+00:00", "kind": "readme", "missing": false, "url": "https://github.com/gordontucker/FittedSheets"}], "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:45.504149+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:04:45.504149+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:04:45.504149+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T04:36:03.427586+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "087c2b0b4ffe20cc3a6ff7f3a114d29e926bd1a625dea6824a69c7981ced33ed", "fetched_at": "2026-08-28T04:04:45.504149+00:00", "kind": "readme", "missing": false, "url": "https://github.com/gordontucker/FittedSheets"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:04:45.504149+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:04:45.504149+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T04:36:03.427586+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "087c2b0b4ffe20cc3a6ff7f3a114d29e926bd1a625dea6824a69c7981ced33ed", "fetched_at": "2026-08-28T04:04:45.504149+00:00", "kind": "readme", "missing": false, "url": "https://github.com/gordontucker/FittedSheets"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:04:45.504149+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:04:45.504149+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:04:45.504149+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T04:36:03.427586+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "087c2b0b4ffe20cc3a6ff7f3a114d29e926bd1a625dea6824a69c7981ced33ed", "fetched_at": "2026-08-28T04:04:45.504149+00:00", "kind": "readme", "missing": false, "url": "https://github.com/gordontucker/FittedSheets"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:04:45.504149+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:04:45.504149+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T04:36:03.427586+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "087c2b0b4ffe20cc3a6ff7f3a114d29e926bd1a625dea6824a69c7981ced33ed", "fetched_at": "2026-08-28T04:04:45.504149+00:00", "kind": "readme", "missing": false, "url": "https://github.com/gordontucker/FittedSheets"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T04:36:03.427586+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "087c2b0b4ffe20cc3a6ff7f3a114d29e926bd1a625dea6824a69c7981ced33ed", "fetched_at": "2026-08-28T04:04:45.504149+00:00", "kind": "readme", "missing": false, "url": "https://github.com/gordontucker/FittedSheets"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T04:36:03.427586+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "087c2b0b4ffe20cc3a6ff7f3a114d29e926bd1a625dea6824a69c7981ced33ed", "fetched_at": "2026-08-28T04:04:45.504149+00:00", "kind": "readme", "missing": false, "url": "https://github.com/gordontucker/FittedSheets"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T04:36:03.427586+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "087c2b0b4ffe20cc3a6ff7f3a114d29e926bd1a625dea6824a69c7981ced33ed", "fetched_at": "2026-08-28T04:04:45.504149+00:00", "kind": "readme", "missing": false, "url": "https://github.com/gordontucker/FittedSheets"}], "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": 2939, "days_push": 708, "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}}