{"adoption": {"forks": 735, "observed_at": "2026-08-28T04:08:18.315844+00:00", "stars": 3778}, "canonical_url": "https://ross.abutalabs.com/products/pysearch", "card": {"archived": false, "artifact_type": "library", "description": "🔍 An elegant search controller which replaces the UISearchController for iOS (iPhone & iPad) .", "domain": ["mobile-development", "frontend"], "enriched": true, "function": ["ui-components", "search-engine"], "health_score": 20, "homepage": null, "language": "Objective-C", "license": "MIT", "license_family": "permissive", "maturity": "maintenance", "member_repos": ["ko1o/PYSearch"], "name": "ko1o/PYSearch", "platform": [], "pushed_at": "2020-09-30T01:35:57+00:00", "repo": "ko1o/PYSearch", "stars": 3778, "tags": ["uikit", "cocoapods", "search-controller", "objective-c", "search-history", "search-suggestions", "search", "ios", "mobile", "swift"], "topics": ["objective-c", "search", "swift", "ios", "ui", "cocoapods", "pod"], "urls": [], "use_cases": ["add a search screen to an iOS app", "replace UISearchController with a customizable search UI", "show hot search keywords and search history in iOS", "implement search suggestions in an iPhone or iPad app", "build a search page with multiple result display styles"], "what_it_is": "PYSearch is an Objective-C iOS UI library providing an elegant, customizable search controller to replace UISearchController on iPhone and iPad. It supports hot search styles, search history with caching, search suggestions, and multiple display modes.", "when_to_avoid": ["targeting platforms other than iOS", "you need a maintained library - the last release was 2020", "building for SwiftUI-first architectures where UIKit controllers are awkward", "you need backend search functionality rather than UI"], "when_to_choose": ["building an Objective-C or Swift iOS app that needs a polished, ready-made search UI", "you want built-in hot search, history caching, and suggestion views out of the box", "you need CocoaPods integration and localization support"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/pysearch", "repo": "ko1o/PYSearch", "role": "main", "score": 23}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:08:18.315844+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T18:27:47.652170+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d37577fb017b315adfde69204f0e8cc3226d50d47dbf69157ccc8233c1cfc851", "fetched_at": "2026-08-28T04:08:18.315844+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ko1o/PYSearch"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:08:18.315844+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T18:27:47.652170+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d37577fb017b315adfde69204f0e8cc3226d50d47dbf69157ccc8233c1cfc851", "fetched_at": "2026-08-28T04:08:18.315844+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ko1o/PYSearch"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T18:27:47.652170+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d37577fb017b315adfde69204f0e8cc3226d50d47dbf69157ccc8233c1cfc851", "fetched_at": "2026-08-28T04:08:18.315844+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ko1o/PYSearch"}], "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:08:18.315844+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:08:18.315844+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:08:18.315844+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T18:27:47.652170+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d37577fb017b315adfde69204f0e8cc3226d50d47dbf69157ccc8233c1cfc851", "fetched_at": "2026-08-28T04:08:18.315844+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ko1o/PYSearch"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:08:18.315844+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:08:18.315844+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T18:27:47.652170+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d37577fb017b315adfde69204f0e8cc3226d50d47dbf69157ccc8233c1cfc851", "fetched_at": "2026-08-28T04:08:18.315844+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ko1o/PYSearch"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:08:18.315844+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:08:18.315844+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:08:18.315844+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T18:27:47.652170+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d37577fb017b315adfde69204f0e8cc3226d50d47dbf69157ccc8233c1cfc851", "fetched_at": "2026-08-28T04:08:18.315844+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ko1o/PYSearch"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:08:18.315844+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:08:18.315844+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T18:27:47.652170+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d37577fb017b315adfde69204f0e8cc3226d50d47dbf69157ccc8233c1cfc851", "fetched_at": "2026-08-28T04:08:18.315844+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ko1o/PYSearch"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T18:27:47.652170+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d37577fb017b315adfde69204f0e8cc3226d50d47dbf69157ccc8233c1cfc851", "fetched_at": "2026-08-28T04:08:18.315844+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ko1o/PYSearch"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T18:27:47.652170+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d37577fb017b315adfde69204f0e8cc3226d50d47dbf69157ccc8233c1cfc851", "fetched_at": "2026-08-28T04:08:18.315844+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ko1o/PYSearch"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T18:27:47.652170+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d37577fb017b315adfde69204f0e8cc3226d50d47dbf69157ccc8233c1cfc851", "fetched_at": "2026-08-28T04:08:18.315844+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ko1o/PYSearch"}], "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": 3601, "days_push": 2164, "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}}