{"adoption": {"forks": 276, "observed_at": "2026-08-28T04:07:02.443635+00:00", "stars": 2581}, "canonical_url": "https://ross.abutalabs.com/products/fingerprint-suite", "card": {"archived": false, "artifact_type": "library", "description": "Browser fingerprinting tools for anonymizing your scrapers. Developed by Apify.", "domain": ["web-development", "crawlers", "privacy"], "enriched": true, "function": ["web-scraping", "security", "http-client", "data-generation"], "health_score": 99, "homepage": null, "language": "TypeScript", "license": "Apache-2.0", "license_family": "permissive", "maturity": "active", "member_repos": ["apify/fingerprint-suite"], "name": "apify/fingerprint-suite", "platform": ["cross-platform"], "pushed_at": "2026-08-20T12:30:08+00:00", "repo": "apify/fingerprint-suite", "stars": 2581, "tags": ["browser-fingerprinting", "anti-detection", "playwright", "puppeteer", "header-generation", "fingerprint-injection", "automation", "nodejs"], "topics": ["fingerprinting", "playwright", "puppeteer", "scraping", "typescript"], "urls": [], "use_cases": ["make my scraper avoid bot detection", "generate realistic browser fingerprints for puppeteer", "inject fingerprint into playwright browser", "generate realistic http headers for scraping", "rotate browser fingerprints across scraping sessions", "scrape websites that block headless browsers"], "what_it_is": "A modular TypeScript toolkit by Apify for generating realistic browser fingerprints and HTTP headers and injecting them into Playwright or Puppeteer browser instances. It helps scrapers evade fingerprint-based tracking and bot detection.", "when_to_avoid": ["you need a full stealth browser with proxy and captcha handling out of the box", "your project is not Node.js/TypeScript based", "you only need simple user-agent rotation without full fingerprint spoofing"], "when_to_choose": ["you use Playwright or Puppeteer and need to bypass fingerprint-based anti-bot systems", "you want consistent, realistic HTTP headers matched to browser JS APIs", "you need configurable fingerprints (device, OS) for scraping at scale"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/fingerprint-suite", "repo": "apify/fingerprint-suite", "role": "main", "score": 98}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:07:02.443635+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T02:22:36.885518+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "13cd173837774e6a1f36bdfd7a3654891ce93e3734a98b0ec8f1413c6fda5eb5", "fetched_at": "2026-08-28T04:07:02.443635+00:00", "kind": "readme", "missing": false, "url": "https://github.com/apify/fingerprint-suite"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:07:02.443635+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T02:22:36.885518+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "13cd173837774e6a1f36bdfd7a3654891ce93e3734a98b0ec8f1413c6fda5eb5", "fetched_at": "2026-08-28T04:07:02.443635+00:00", "kind": "readme", "missing": false, "url": "https://github.com/apify/fingerprint-suite"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T02:22:36.885518+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "13cd173837774e6a1f36bdfd7a3654891ce93e3734a98b0ec8f1413c6fda5eb5", "fetched_at": "2026-08-28T04:07:02.443635+00:00", "kind": "readme", "missing": false, "url": "https://github.com/apify/fingerprint-suite"}], "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:07:02.443635+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:07:02.443635+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:07:02.443635+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T02:22:36.885518+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "13cd173837774e6a1f36bdfd7a3654891ce93e3734a98b0ec8f1413c6fda5eb5", "fetched_at": "2026-08-28T04:07:02.443635+00:00", "kind": "readme", "missing": false, "url": "https://github.com/apify/fingerprint-suite"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:07:02.443635+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:07:02.443635+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T02:22:36.885518+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "13cd173837774e6a1f36bdfd7a3654891ce93e3734a98b0ec8f1413c6fda5eb5", "fetched_at": "2026-08-28T04:07:02.443635+00:00", "kind": "readme", "missing": false, "url": "https://github.com/apify/fingerprint-suite"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:07:02.443635+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:07:02.443635+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:07:02.443635+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T02:22:36.885518+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "13cd173837774e6a1f36bdfd7a3654891ce93e3734a98b0ec8f1413c6fda5eb5", "fetched_at": "2026-08-28T04:07:02.443635+00:00", "kind": "readme", "missing": false, "url": "https://github.com/apify/fingerprint-suite"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:07:02.443635+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:07:02.443635+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T02:22:36.885518+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "13cd173837774e6a1f36bdfd7a3654891ce93e3734a98b0ec8f1413c6fda5eb5", "fetched_at": "2026-08-28T04:07:02.443635+00:00", "kind": "readme", "missing": false, "url": "https://github.com/apify/fingerprint-suite"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T02:22:36.885518+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "13cd173837774e6a1f36bdfd7a3654891ce93e3734a98b0ec8f1413c6fda5eb5", "fetched_at": "2026-08-28T04:07:02.443635+00:00", "kind": "readme", "missing": false, "url": "https://github.com/apify/fingerprint-suite"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T02:22:36.885518+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "13cd173837774e6a1f36bdfd7a3654891ce93e3734a98b0ec8f1413c6fda5eb5", "fetched_at": "2026-08-28T04:07:02.443635+00:00", "kind": "readme", "missing": false, "url": "https://github.com/apify/fingerprint-suite"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T02:22:36.885518+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "13cd173837774e6a1f36bdfd7a3654891ce93e3734a98b0ec8f1413c6fda5eb5", "fetched_at": "2026-08-28T04:07:02.443635+00:00", "kind": "readme", "missing": false, "url": "https://github.com/apify/fingerprint-suite"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 98, "longevity": 100, "rhythm": 96}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 1582, "days_push": 13, "days_rel": 28, "gap_med": 18, "n_releases_24m": 32}, "score": 98, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}