{"adoption": {"forks": 1036, "observed_at": "2026-08-28T04:10:23.856896+00:00", "stars": 8623}, "canonical_url": "https://ross.abutalabs.com/products/grdbswift", "card": {"archived": false, "artifact_type": "library", "description": "A toolkit for SQLite databases, with a focus on application development", "domain": ["databases", "mobile-development", "developer-tools", "cross-platform"], "enriched": true, "function": ["database", "orm", "database-driver", "concurrency"], "health_score": 97, "homepage": null, "language": "Swift", "license": "MIT", "license_family": "permissive", "maturity": "stable", "member_repos": ["groue/GRDB.swift"], "name": "groue/GRDB.swift", "platform": [], "pushed_at": "2026-08-08T08:57:22+00:00", "repo": "groue/GRDB.swift", "stars": 8623, "tags": ["sqlite", "swift", "database-observation", "migrations", "sql-builder", "wal-mode", "spm", "ios", "macos", "mobile", "desktop"], "topics": ["sqlite", "database", "sql", "sql-builder", "grdb", "spm", "sqlite-databases", "database-observation"], "urls": [], "use_cases": ["persist app data in sqlite on ios", "observe database changes reactively in swift", "run database migrations as app versions ship", "query sqlite without writing raw sql", "use sqlite concurrently from multiple threads", "map swift structs to database records"], "what_it_is": "GRDB.swift is a Swift toolkit for working with SQLite databases, focused on application development. It provides record persistence, type-safe SQL generation, database observation, migrations, and robust concurrency support.", "when_to_avoid": ["your app targets Android or non-Apple platforms", "you need a client-server database like PostgreSQL or MySQL", "you prefer Core Data or SwiftData ecosystem integration"], "when_to_choose": ["you are building an iOS, macOS, tvOS, or watchOS app that needs local persistence", "you want reactive database observation with concurrent reads and writes", "you need schema migrations for evolving app data", "you want both raw SQL access and higher-level record APIs"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/grdbswift", "repo": "groue/GRDB.swift", "role": "main", "score": 94}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:10:23.856896+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T17:25:52.533306+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "00be17cb279f375e66128dbff99c88a3e874210fa98289cb374d70a36fb4f807", "fetched_at": "2026-08-28T04:10:23.856896+00:00", "kind": "readme", "missing": false, "url": "https://github.com/groue/GRDB.swift"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:10:23.856896+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T17:25:52.533306+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "00be17cb279f375e66128dbff99c88a3e874210fa98289cb374d70a36fb4f807", "fetched_at": "2026-08-28T04:10:23.856896+00:00", "kind": "readme", "missing": false, "url": "https://github.com/groue/GRDB.swift"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T17:25:52.533306+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "00be17cb279f375e66128dbff99c88a3e874210fa98289cb374d70a36fb4f807", "fetched_at": "2026-08-28T04:10:23.856896+00:00", "kind": "readme", "missing": false, "url": "https://github.com/groue/GRDB.swift"}], "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:23.856896+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:10:23.856896+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:10:23.856896+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T17:25:52.533306+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "00be17cb279f375e66128dbff99c88a3e874210fa98289cb374d70a36fb4f807", "fetched_at": "2026-08-28T04:10:23.856896+00:00", "kind": "readme", "missing": false, "url": "https://github.com/groue/GRDB.swift"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:10:23.856896+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:10:23.856896+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T17:25:52.533306+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "00be17cb279f375e66128dbff99c88a3e874210fa98289cb374d70a36fb4f807", "fetched_at": "2026-08-28T04:10:23.856896+00:00", "kind": "readme", "missing": false, "url": "https://github.com/groue/GRDB.swift"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:10:23.856896+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:10:23.856896+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:10:23.856896+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T17:25:52.533306+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "00be17cb279f375e66128dbff99c88a3e874210fa98289cb374d70a36fb4f807", "fetched_at": "2026-08-28T04:10:23.856896+00:00", "kind": "readme", "missing": false, "url": "https://github.com/groue/GRDB.swift"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:10:23.856896+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:10:23.856896+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T17:25:52.533306+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "00be17cb279f375e66128dbff99c88a3e874210fa98289cb374d70a36fb4f807", "fetched_at": "2026-08-28T04:10:23.856896+00:00", "kind": "readme", "missing": false, "url": "https://github.com/groue/GRDB.swift"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T17:25:52.533306+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "00be17cb279f375e66128dbff99c88a3e874210fa98289cb374d70a36fb4f807", "fetched_at": "2026-08-28T04:10:23.856896+00:00", "kind": "readme", "missing": false, "url": "https://github.com/groue/GRDB.swift"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T17:25:52.533306+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "00be17cb279f375e66128dbff99c88a3e874210fa98289cb374d70a36fb4f807", "fetched_at": "2026-08-28T04:10:23.856896+00:00", "kind": "readme", "missing": false, "url": "https://github.com/groue/GRDB.swift"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T17:25:52.533306+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "00be17cb279f375e66128dbff99c88a3e874210fa98289cb374d70a36fb4f807", "fetched_at": "2026-08-28T04:10:23.856896+00:00", "kind": "readme", "missing": false, "url": "https://github.com/groue/GRDB.swift"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 96, "longevity": 100, "rhythm": 89}, "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": 4082, "days_push": 25, "days_rel": 76, "gap_med": 21.5, "n_releases_24m": 17}, "score": 94, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}