{"adoption": {"forks": 106, "observed_at": "2026-08-28T04:06:08.144843+00:00", "stars": 2037}, "canonical_url": "https://ross.abutalabs.com/products/krzysztofzablocki-bootstrap", "card": {"archived": false, "artifact_type": "learning-resource", "description": "iOS project bootstrap aimed at high quality coding.", "domain": ["mobile-development", "developer-tools"], "enriched": true, "function": ["developer-tools", "build-tool", "linter", "configuration-management"], "health_score": 20, "homepage": null, "language": "Objective-C", "license": "NOASSERTION", "license_family": "other", "maturity": "maintenance", "member_repos": ["krzysztofzablocki/Bootstrap"], "name": "krzysztofzablocki/Bootstrap", "platform": [], "pushed_at": "2020-10-20T09:22:10+00:00", "repo": "krzysztofzablocki/Bootstrap", "stars": 2037, "tags": ["ios", "objective-c", "project-bootstrap", "code-quality", "xcode", "cocoapods", "build-configurations", "boilerplate", "macos"], "topics": [], "urls": [], "use_cases": ["bootstrap a new iOS project with best-practice build configurations", "turn TODO/FIXME comments into compiler warnings", "enforce warnings-as-errors in an Xcode project", "add macros to prevent nil arguments and enforce calling super", "set up staging and production environment configurations", "show build number, branch, and commit hash on the app icon"], "what_it_is": "KZBootstrap is an iOS project bootstrap template that sets up high-quality project configuration, build settings, and code quality tooling for Objective-C projects. It provides multi-configuration builds (Debug/Release/Adhoc), compiler warning setups, and helpful macros for safer code.", "when_to_avoid": ["building Swift-first iOS projects, since this targets Objective-C", "looking for an actively maintained solution - last release was 2020", "needing a full CI/CD or dependency management setup rather than project configuration"], "when_to_choose": ["starting a new Objective-C iOS project and wanting strong code quality defaults", "needing multiple build configurations and environments side by side on one device", "wanting automated warnings for large files and TODOs"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/krzysztofzablocki-bootstrap", "repo": "krzysztofzablocki/Bootstrap", "role": "main", "score": 23}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:06:08.144843+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T08:32:09.202857+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8add85b255044c2882b7ecbc97d38581c466dc746fc184394ac22e899924cd0f", "fetched_at": "2026-08-28T04:06:08.144843+00:00", "kind": "readme", "missing": false, "url": "https://github.com/krzysztofzablocki/Bootstrap"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:06:08.144843+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T08:32:09.202857+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8add85b255044c2882b7ecbc97d38581c466dc746fc184394ac22e899924cd0f", "fetched_at": "2026-08-28T04:06:08.144843+00:00", "kind": "readme", "missing": false, "url": "https://github.com/krzysztofzablocki/Bootstrap"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T08:32:09.202857+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8add85b255044c2882b7ecbc97d38581c466dc746fc184394ac22e899924cd0f", "fetched_at": "2026-08-28T04:06:08.144843+00:00", "kind": "readme", "missing": false, "url": "https://github.com/krzysztofzablocki/Bootstrap"}], "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:06:08.144843+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:06:08.144843+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:06:08.144843+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T08:32:09.202857+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8add85b255044c2882b7ecbc97d38581c466dc746fc184394ac22e899924cd0f", "fetched_at": "2026-08-28T04:06:08.144843+00:00", "kind": "readme", "missing": false, "url": "https://github.com/krzysztofzablocki/Bootstrap"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:06:08.144843+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:06:08.144843+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T08:32:09.202857+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8add85b255044c2882b7ecbc97d38581c466dc746fc184394ac22e899924cd0f", "fetched_at": "2026-08-28T04:06:08.144843+00:00", "kind": "readme", "missing": false, "url": "https://github.com/krzysztofzablocki/Bootstrap"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:06:08.144843+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:06:08.144843+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:06:08.144843+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T08:32:09.202857+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8add85b255044c2882b7ecbc97d38581c466dc746fc184394ac22e899924cd0f", "fetched_at": "2026-08-28T04:06:08.144843+00:00", "kind": "readme", "missing": false, "url": "https://github.com/krzysztofzablocki/Bootstrap"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:06:08.144843+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:06:08.144843+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T08:32:09.202857+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8add85b255044c2882b7ecbc97d38581c466dc746fc184394ac22e899924cd0f", "fetched_at": "2026-08-28T04:06:08.144843+00:00", "kind": "readme", "missing": false, "url": "https://github.com/krzysztofzablocki/Bootstrap"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T08:32:09.202857+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8add85b255044c2882b7ecbc97d38581c466dc746fc184394ac22e899924cd0f", "fetched_at": "2026-08-28T04:06:08.144843+00:00", "kind": "readme", "missing": false, "url": "https://github.com/krzysztofzablocki/Bootstrap"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T08:32:09.202857+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8add85b255044c2882b7ecbc97d38581c466dc746fc184394ac22e899924cd0f", "fetched_at": "2026-08-28T04:06:08.144843+00:00", "kind": "readme", "missing": false, "url": "https://github.com/krzysztofzablocki/Bootstrap"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T08:32:09.202857+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8add85b255044c2882b7ecbc97d38581c466dc746fc184394ac22e899924cd0f", "fetched_at": "2026-08-28T04:06:08.144843+00:00", "kind": "readme", "missing": false, "url": "https://github.com/krzysztofzablocki/Bootstrap"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 8}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["no_license"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 4340, "days_push": 2143, "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}}