{"adoption": {"forks": 110, "observed_at": "2026-08-28T04:03:43.350602+00:00", "stars": 1135}, "canonical_url": "https://ross.abutalabs.com/products/sift-ios", "card": {"archived": false, "artifact_type": "application", "description": "Uncover network traffic in real-time for every app on your phone", "domain": ["privacy", "security", "mobile-development", "networking", "developer-tools"], "enriched": true, "function": ["networking", "security", "privacy", "monitoring"], "health_score": 20, "homepage": "https://alexgr.in", "language": "Swift", "license": "Apache-2.0", "license_family": "permissive", "maturity": "abandoned", "member_repos": ["agrinman/sift-ios"], "name": "agrinman/sift-ios", "platform": [], "pushed_at": "2020-03-31T00:38:49+00:00", "repo": "agrinman/sift-ios", "stars": 1135, "tags": ["network-traffic-inspection", "content-blocker", "ad-blocking", "ios-network-extension", "debugging", "ios", "mobile"], "topics": [], "urls": [], "use_cases": ["see what network requests apps on my iphone are making", "find out if apps are tracking me in the background", "block ads and tracking domains system-wide on ios", "monitor background network activity of apps", "debug networking in my live ios app", "check if an app connects to suspicious urls"], "what_it_is": "Sift is an open-source iOS app that reveals real-time network traffic made by every app on your phone, using push notifications to surface requests as they happen. It also lets users create rules to block ads, trackers, and other unwanted URLs, and serves as a debugging tool for iOS developers.", "when_to_avoid": ["you expect an App Store install - it must be self-built with Xcode due to content-filter restrictions", "you need actively maintained software with recent updates", "you need network inspection on Android, desktop, or non-iOS platforms"], "when_to_choose": ["you want a fully private, on-device network traffic inspector for iOS with no data leaving the phone", "you are an iOS developer comfortable building from source with your own signing team", "you want to block tracking and ad domains for all apps via a content filter"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/sift-ios", "repo": "agrinman/sift-ios", "role": "main", "score": 32}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:03:43.350602+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T06:36:45.828087+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bd783e77871870f59ca3c784e8cc95d7fb6fbefac44ec9edc4566c435ab147b2", "fetched_at": "2026-08-28T04:03:43.350602+00:00", "kind": "readme", "missing": false, "url": "https://github.com/agrinman/sift-ios"}, {"content_hash": "00d3b2dd915ad9bdb29bb56139504147f1e92ee7c5e285f95bdf3c823a106937", "fetched_at": "2026-08-29T12:41:37.945842+00:00", "kind": "homepage", "missing": false, "url": "https://alexgr.in"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:03:43.350602+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T06:36:45.828087+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bd783e77871870f59ca3c784e8cc95d7fb6fbefac44ec9edc4566c435ab147b2", "fetched_at": "2026-08-28T04:03:43.350602+00:00", "kind": "readme", "missing": false, "url": "https://github.com/agrinman/sift-ios"}, {"content_hash": "00d3b2dd915ad9bdb29bb56139504147f1e92ee7c5e285f95bdf3c823a106937", "fetched_at": "2026-08-29T12:41:37.945842+00:00", "kind": "homepage", "missing": false, "url": "https://alexgr.in"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T06:36:45.828087+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bd783e77871870f59ca3c784e8cc95d7fb6fbefac44ec9edc4566c435ab147b2", "fetched_at": "2026-08-28T04:03:43.350602+00:00", "kind": "readme", "missing": false, "url": "https://github.com/agrinman/sift-ios"}, {"content_hash": "00d3b2dd915ad9bdb29bb56139504147f1e92ee7c5e285f95bdf3c823a106937", "fetched_at": "2026-08-29T12:41:37.945842+00:00", "kind": "homepage", "missing": false, "url": "https://alexgr.in"}], "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:43.350602+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:03:43.350602+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:03:43.350602+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T06:36:45.828087+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bd783e77871870f59ca3c784e8cc95d7fb6fbefac44ec9edc4566c435ab147b2", "fetched_at": "2026-08-28T04:03:43.350602+00:00", "kind": "readme", "missing": false, "url": "https://github.com/agrinman/sift-ios"}, {"content_hash": "00d3b2dd915ad9bdb29bb56139504147f1e92ee7c5e285f95bdf3c823a106937", "fetched_at": "2026-08-29T12:41:37.945842+00:00", "kind": "homepage", "missing": false, "url": "https://alexgr.in"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:03:43.350602+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:03:43.350602+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T06:36:45.828087+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bd783e77871870f59ca3c784e8cc95d7fb6fbefac44ec9edc4566c435ab147b2", "fetched_at": "2026-08-28T04:03:43.350602+00:00", "kind": "readme", "missing": false, "url": "https://github.com/agrinman/sift-ios"}, {"content_hash": "00d3b2dd915ad9bdb29bb56139504147f1e92ee7c5e285f95bdf3c823a106937", "fetched_at": "2026-08-29T12:41:37.945842+00:00", "kind": "homepage", "missing": false, "url": "https://alexgr.in"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:03:43.350602+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:03:43.350602+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:03:43.350602+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T06:36:45.828087+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bd783e77871870f59ca3c784e8cc95d7fb6fbefac44ec9edc4566c435ab147b2", "fetched_at": "2026-08-28T04:03:43.350602+00:00", "kind": "readme", "missing": false, "url": "https://github.com/agrinman/sift-ios"}, {"content_hash": "00d3b2dd915ad9bdb29bb56139504147f1e92ee7c5e285f95bdf3c823a106937", "fetched_at": "2026-08-29T12:41:37.945842+00:00", "kind": "homepage", "missing": false, "url": "https://alexgr.in"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:03:43.350602+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:03:43.350602+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T06:36:45.828087+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bd783e77871870f59ca3c784e8cc95d7fb6fbefac44ec9edc4566c435ab147b2", "fetched_at": "2026-08-28T04:03:43.350602+00:00", "kind": "readme", "missing": false, "url": "https://github.com/agrinman/sift-ios"}, {"content_hash": "00d3b2dd915ad9bdb29bb56139504147f1e92ee7c5e285f95bdf3c823a106937", "fetched_at": "2026-08-29T12:41:37.945842+00:00", "kind": "homepage", "missing": false, "url": "https://alexgr.in"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T06:36:45.828087+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bd783e77871870f59ca3c784e8cc95d7fb6fbefac44ec9edc4566c435ab147b2", "fetched_at": "2026-08-28T04:03:43.350602+00:00", "kind": "readme", "missing": false, "url": "https://github.com/agrinman/sift-ios"}, {"content_hash": "00d3b2dd915ad9bdb29bb56139504147f1e92ee7c5e285f95bdf3c823a106937", "fetched_at": "2026-08-29T12:41:37.945842+00:00", "kind": "homepage", "missing": false, "url": "https://alexgr.in"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T06:36:45.828087+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bd783e77871870f59ca3c784e8cc95d7fb6fbefac44ec9edc4566c435ab147b2", "fetched_at": "2026-08-28T04:03:43.350602+00:00", "kind": "readme", "missing": false, "url": "https://github.com/agrinman/sift-ios"}, {"content_hash": "00d3b2dd915ad9bdb29bb56139504147f1e92ee7c5e285f95bdf3c823a106937", "fetched_at": "2026-08-29T12:41:37.945842+00:00", "kind": "homepage", "missing": false, "url": "https://alexgr.in"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T06:36:45.828087+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bd783e77871870f59ca3c784e8cc95d7fb6fbefac44ec9edc4566c435ab147b2", "fetched_at": "2026-08-28T04:03:43.350602+00:00", "kind": "readme", "missing": false, "url": "https://github.com/agrinman/sift-ios"}, {"content_hash": "00d3b2dd915ad9bdb29bb56139504147f1e92ee7c5e285f95bdf3c823a106937", "fetched_at": "2026-08-29T12:41:37.945842+00:00", "kind": "homepage", "missing": false, "url": "https://alexgr.in"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": ["no_releases"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 3015, "days_push": 2347, "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}}