{"adoption": {"forks": 597, "observed_at": "2026-08-28T04:09:09.362978+00:00", "stars": 5072}, "canonical_url": "https://ross.abutalabs.com/products/ohhttpstubs", "card": {"archived": false, "artifact_type": "library", "description": "Stub your network requests easily! Test your apps with fake network data and custom response time, response code and headers!", "domain": ["testing", "mobile-development", "developer-tools"], "enriched": true, "function": ["mocking", "testing", "http-client"], "health_score": 20, "homepage": null, "language": "Objective-C", "license": "MIT", "license_family": "permissive", "maturity": "maintenance", "member_repos": ["AliSoftware/OHHTTPStubs"], "name": "AliSoftware/OHHTTPStubs", "platform": [], "pushed_at": "2024-05-09T20:34:35+00:00", "repo": "AliSoftware/OHHTTPStubs", "stars": 5072, "tags": ["network-stubbing", "unit-testing", "url-loading-system", "objective-c", "fake-network-data", "slow-network-simulation", "ios", "macos", "swift"], "topics": ["ios", "stubbing", "network", "swift", "objective-c", "stub", "ohhttpstubs", "mock", "mock-server", "mocking"], "urls": [], "use_cases": ["stub network requests in iOS unit tests with fixture files", "simulate slow network conditions to test app behavior", "mock API responses for Alamofire or AFNetworking requests", "return custom status codes and headers in tests", "test offline and error scenarios without a real server"], "what_it_is": "OHHTTPStubs is an Objective-C/Swift library for stubbing network requests in iOS and macOS apps. It intercepts requests made through Cocoa's URL Loading System and returns fake responses with custom data, status codes, headers, and simulated latency.", "when_to_avoid": ["your app uses a networking stack that bypasses Cocoa's URL Loading System", "you need integration testing against a real or containerized mock server", "you're developing for platforms outside Apple's ecosystem"], "when_to_choose": ["you're building iOS/macOS apps using NSURLSession, AFNetworking, or Alamofire and need deterministic network responses in tests", "you want to simulate bad network conditions like latency or failures", "you prefer stubbing at the URL Loading System level rather than running a mock server"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/ohhttpstubs", "repo": "AliSoftware/OHHTTPStubs", "role": "main", "score": 23}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:09:09.362978+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T18:02:48.096444+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5cf86e6c35b0bb821a4b08ed483055224d74e973efe1b8b38a1c06b1f48365fa", "fetched_at": "2026-08-28T04:09:09.362978+00:00", "kind": "readme", "missing": false, "url": "https://github.com/AliSoftware/OHHTTPStubs"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:09:09.362978+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T18:02:48.096444+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5cf86e6c35b0bb821a4b08ed483055224d74e973efe1b8b38a1c06b1f48365fa", "fetched_at": "2026-08-28T04:09:09.362978+00:00", "kind": "readme", "missing": false, "url": "https://github.com/AliSoftware/OHHTTPStubs"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T18:02:48.096444+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5cf86e6c35b0bb821a4b08ed483055224d74e973efe1b8b38a1c06b1f48365fa", "fetched_at": "2026-08-28T04:09:09.362978+00:00", "kind": "readme", "missing": false, "url": "https://github.com/AliSoftware/OHHTTPStubs"}], "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:09:09.362978+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:09:09.362978+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:09:09.362978+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T18:02:48.096444+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5cf86e6c35b0bb821a4b08ed483055224d74e973efe1b8b38a1c06b1f48365fa", "fetched_at": "2026-08-28T04:09:09.362978+00:00", "kind": "readme", "missing": false, "url": "https://github.com/AliSoftware/OHHTTPStubs"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:09:09.362978+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:09:09.362978+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T18:02:48.096444+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5cf86e6c35b0bb821a4b08ed483055224d74e973efe1b8b38a1c06b1f48365fa", "fetched_at": "2026-08-28T04:09:09.362978+00:00", "kind": "readme", "missing": false, "url": "https://github.com/AliSoftware/OHHTTPStubs"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:09:09.362978+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:09:09.362978+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:09:09.362978+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T18:02:48.096444+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5cf86e6c35b0bb821a4b08ed483055224d74e973efe1b8b38a1c06b1f48365fa", "fetched_at": "2026-08-28T04:09:09.362978+00:00", "kind": "readme", "missing": false, "url": "https://github.com/AliSoftware/OHHTTPStubs"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:09:09.362978+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:09:09.362978+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T18:02:48.096444+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5cf86e6c35b0bb821a4b08ed483055224d74e973efe1b8b38a1c06b1f48365fa", "fetched_at": "2026-08-28T04:09:09.362978+00:00", "kind": "readme", "missing": false, "url": "https://github.com/AliSoftware/OHHTTPStubs"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T18:02:48.096444+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5cf86e6c35b0bb821a4b08ed483055224d74e973efe1b8b38a1c06b1f48365fa", "fetched_at": "2026-08-28T04:09:09.362978+00:00", "kind": "readme", "missing": false, "url": "https://github.com/AliSoftware/OHHTTPStubs"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T18:02:48.096444+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5cf86e6c35b0bb821a4b08ed483055224d74e973efe1b8b38a1c06b1f48365fa", "fetched_at": "2026-08-28T04:09:09.362978+00:00", "kind": "readme", "missing": false, "url": "https://github.com/AliSoftware/OHHTTPStubs"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T18:02:48.096444+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5cf86e6c35b0bb821a4b08ed483055224d74e973efe1b8b38a1c06b1f48365fa", "fetched_at": "2026-08-28T04:09:09.362978+00:00", "kind": "readme", "missing": false, "url": "https://github.com/AliSoftware/OHHTTPStubs"}], "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": 5167, "days_push": 846, "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}}