{"adoption": {"forks": 290, "observed_at": "2026-08-28T04:06:21.676533+00:00", "stars": 2170}, "canonical_url": "https://ross.abutalabs.com/products/loc567", "card": {"archived": false, "artifact_type": "application", "description": "loc567 是一款完全开源免费的纯网页端iOS模拟定位工具。在线体验地址：https://loc567.com", "domain": ["developer-tools", "privacy", "web-development"], "enriched": true, "function": ["geospatial", "security"], "health_score": 73, "homepage": null, "language": "C", "license": "LGPL-2.1", "license_family": "copyleft", "maturity": "active", "member_repos": ["loc567/loc567"], "name": "loc567/loc567", "platform": ["browser"], "pushed_at": "2026-06-19T04:13:24+00:00", "repo": "loc567/loc567", "stars": 2170, "tags": ["ios-location-spoofing", "gps-simulation", "safari-web", "no-jailbreak", "geolocation-api", "mock-location", "web", "ios", "web-server"], "topics": [], "urls": [], "use_cases": ["spoof gps location on iphone without jailbreak", "test map sdk with fake coordinates on ios", "simulate location in safari without installing an app", "mock geolocation on ios 12 through ios 26", "override browser geolocation on iphone", "test web geolocation api with custom coordinates"], "what_it_is": "loc567 is a fully open-source, free, purely web-based iOS mock location tool that works through Safari without a computer, jailbreak, or TrollStore. It uses standard W3C geolocation web APIs to simulate GPS coordinates on iOS 12 through iOS 26 with all processing done locally on the device.", "when_to_avoid": ["you need location spoofing for attendance check-ins, games, or other prohibited uses - this is explicitly disallowed", "you use third-party browsers like Chrome instead of native Safari", "you need to spoof location at the OS level for native apps rather than web geolocation"], "when_to_choose": ["you need to test location-based web or map features on a real iPhone without extra hardware", "you want a no-install, browser-only mock location solution across many iOS versions", "you prefer an open-source tool that keeps all data local on the device"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/loc567", "repo": "loc567/loc567", "role": "main", "score": 53}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:06:21.676533+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T02:49:19.569697+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "33962d286c365993c0d75f0991546ceb82edbc6e7efb68cc9ebeaffb9391cc76", "fetched_at": "2026-08-28T04:06:21.676533+00:00", "kind": "readme", "missing": false, "url": "https://github.com/loc567/loc567"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:06:21.676533+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T02:49:19.569697+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "33962d286c365993c0d75f0991546ceb82edbc6e7efb68cc9ebeaffb9391cc76", "fetched_at": "2026-08-28T04:06:21.676533+00:00", "kind": "readme", "missing": false, "url": "https://github.com/loc567/loc567"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T02:49:19.569697+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "33962d286c365993c0d75f0991546ceb82edbc6e7efb68cc9ebeaffb9391cc76", "fetched_at": "2026-08-28T04:06:21.676533+00:00", "kind": "readme", "missing": false, "url": "https://github.com/loc567/loc567"}], "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:21.676533+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:06:21.676533+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:06:21.676533+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T02:49:19.569697+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "33962d286c365993c0d75f0991546ceb82edbc6e7efb68cc9ebeaffb9391cc76", "fetched_at": "2026-08-28T04:06:21.676533+00:00", "kind": "readme", "missing": false, "url": "https://github.com/loc567/loc567"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:06:21.676533+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:06:21.676533+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T02:49:19.569697+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "33962d286c365993c0d75f0991546ceb82edbc6e7efb68cc9ebeaffb9391cc76", "fetched_at": "2026-08-28T04:06:21.676533+00:00", "kind": "readme", "missing": false, "url": "https://github.com/loc567/loc567"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:06:21.676533+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:06:21.676533+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:06:21.676533+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T02:49:19.569697+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "33962d286c365993c0d75f0991546ceb82edbc6e7efb68cc9ebeaffb9391cc76", "fetched_at": "2026-08-28T04:06:21.676533+00:00", "kind": "readme", "missing": false, "url": "https://github.com/loc567/loc567"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:06:21.676533+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:06:21.676533+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T02:49:19.569697+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "33962d286c365993c0d75f0991546ceb82edbc6e7efb68cc9ebeaffb9391cc76", "fetched_at": "2026-08-28T04:06:21.676533+00:00", "kind": "readme", "missing": false, "url": "https://github.com/loc567/loc567"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T02:49:19.569697+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "33962d286c365993c0d75f0991546ceb82edbc6e7efb68cc9ebeaffb9391cc76", "fetched_at": "2026-08-28T04:06:21.676533+00:00", "kind": "readme", "missing": false, "url": "https://github.com/loc567/loc567"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T02:49:19.569697+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "33962d286c365993c0d75f0991546ceb82edbc6e7efb68cc9ebeaffb9391cc76", "fetched_at": "2026-08-28T04:06:21.676533+00:00", "kind": "readme", "missing": false, "url": "https://github.com/loc567/loc567"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T02:49:19.569697+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "33962d286c365993c0d75f0991546ceb82edbc6e7efb68cc9ebeaffb9391cc76", "fetched_at": "2026-08-28T04:06:21.676533+00:00", "kind": "readme", "missing": false, "url": "https://github.com/loc567/loc567"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 88, "longevity": 5, "rhythm": 35}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["no_releases", "young"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 83, "days_push": 75, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 53, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}