{"adoption": {"forks": 132, "observed_at": "2026-08-28T04:03:26.298215+00:00", "stars": 1063}, "canonical_url": "https://ross.abutalabs.com/products/autocoding", "card": {"archived": false, "artifact_type": "library", "description": "AutoCoding is a category on NSObject that provides automatic support for NSCoding and NSCopying to every object.", "domain": ["developer-tools", "mobile-development", "desktop-applications"], "enriched": true, "function": ["serialization", "security"], "health_score": 20, "homepage": null, "language": "Objective-C", "license": "NOASSERTION", "license_family": "other", "maturity": "maintenance", "member_repos": ["nicklockwood/AutoCoding"], "name": "nicklockwood/AutoCoding", "platform": [], "pushed_at": "2017-10-26T08:42:15+00:00", "repo": "nicklockwood/AutoCoding", "stars": 1063, "tags": ["objective-c", "nscoding", "nscopying", "nssecurecoding", "object-categorization", "apple-platforms", "ios", "macos"], "topics": [], "urls": [], "use_cases": ["persist model objects to disk without writing NSCoding boilerplate", "add NSSecureCoding support to existing classes automatically", "save and load object graphs from files in an iOS or macOS app", "make legacy Objective-C classes serializable with minimal code changes", "protect against object-substitution attacks when decoding archived data"], "what_it_is": "AutoCoding is an Objective-C category on NSObject that automatically implements NSCoding (including NSSecureCoding) for any object, eliminating the need to write initWithCoder: and encodeWithCoder: methods manually. It also supports saving and loading objects to files and offers optional NSCopying support.", "when_to_avoid": ["you are starting a new project and can use Swift Codable or other modern serialization", "your model classes rely on non-NSCoding-compliant structs or Core Data managed objects with special copying needs", "you need actively maintained software with recent updates"], "when_to_choose": ["you maintain an older Objective-C codebase that relies on NSKeyedArchiver serialization", "you want automatic NSCoding/NSSecureCoding conformance without per-class boilerplate", "you need thread-safe, secure serialization for Apple-platform model objects"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/autocoding", "repo": "nicklockwood/AutoCoding", "role": "main", "score": 32}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:03:26.298215+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T06:56:40.092195+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0c600f0839517fbc4fac3c67c7a6c82bf09818c7212071c6ac9eca6480656409", "fetched_at": "2026-08-28T04:03:26.298215+00:00", "kind": "readme", "missing": false, "url": "https://github.com/nicklockwood/AutoCoding"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:03:26.298215+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T06:56:40.092195+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0c600f0839517fbc4fac3c67c7a6c82bf09818c7212071c6ac9eca6480656409", "fetched_at": "2026-08-28T04:03:26.298215+00:00", "kind": "readme", "missing": false, "url": "https://github.com/nicklockwood/AutoCoding"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T06:56:40.092195+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0c600f0839517fbc4fac3c67c7a6c82bf09818c7212071c6ac9eca6480656409", "fetched_at": "2026-08-28T04:03:26.298215+00:00", "kind": "readme", "missing": false, "url": "https://github.com/nicklockwood/AutoCoding"}], "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:03:26.298215+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:03:26.298215+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:03:26.298215+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T06:56:40.092195+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0c600f0839517fbc4fac3c67c7a6c82bf09818c7212071c6ac9eca6480656409", "fetched_at": "2026-08-28T04:03:26.298215+00:00", "kind": "readme", "missing": false, "url": "https://github.com/nicklockwood/AutoCoding"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:03:26.298215+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:03:26.298215+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T06:56:40.092195+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0c600f0839517fbc4fac3c67c7a6c82bf09818c7212071c6ac9eca6480656409", "fetched_at": "2026-08-28T04:03:26.298215+00:00", "kind": "readme", "missing": false, "url": "https://github.com/nicklockwood/AutoCoding"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:03:26.298215+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:03:26.298215+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:03:26.298215+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T06:56:40.092195+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0c600f0839517fbc4fac3c67c7a6c82bf09818c7212071c6ac9eca6480656409", "fetched_at": "2026-08-28T04:03:26.298215+00:00", "kind": "readme", "missing": false, "url": "https://github.com/nicklockwood/AutoCoding"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:03:26.298215+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:03:26.298215+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T06:56:40.092195+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0c600f0839517fbc4fac3c67c7a6c82bf09818c7212071c6ac9eca6480656409", "fetched_at": "2026-08-28T04:03:26.298215+00:00", "kind": "readme", "missing": false, "url": "https://github.com/nicklockwood/AutoCoding"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T06:56:40.092195+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0c600f0839517fbc4fac3c67c7a6c82bf09818c7212071c6ac9eca6480656409", "fetched_at": "2026-08-28T04:03:26.298215+00:00", "kind": "readme", "missing": false, "url": "https://github.com/nicklockwood/AutoCoding"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T06:56:40.092195+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0c600f0839517fbc4fac3c67c7a6c82bf09818c7212071c6ac9eca6480656409", "fetched_at": "2026-08-28T04:03:26.298215+00:00", "kind": "readme", "missing": false, "url": "https://github.com/nicklockwood/AutoCoding"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T06:56:40.092195+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0c600f0839517fbc4fac3c67c7a6c82bf09818c7212071c6ac9eca6480656409", "fetched_at": "2026-08-28T04:03:26.298215+00:00", "kind": "readme", "missing": false, "url": "https://github.com/nicklockwood/AutoCoding"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": ["no_releases", "no_license"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 5320, "days_push": 3233, "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}}