{
    "ready": true,
    "site": {
        "id": 0,
        "domain": "forkit.community",
        "display_name": "Fork it",
        "primary_country_code": "",
        "category_name": "Social Media"
    },
    "metrics": {
        "global_rank": 15099,
        "country_rank": 7873,
        "category_rank": 95,
        "daily_pageviews_per_visitor": 5.06,
        "daily_time_on_site_seconds": 367,
        "bounce_rate": 25.54,
        "search_visits_percent": 29.3,
        "total_sites_linking_in": 3,
        "monthly_unique_visitors": 135,
        "recorded_at": "2026-03-22 22:03:28"
    },
    "audit": {
        "score": 92
    },
    "traffic_sources": {
        "direct_percent": 30.79,
        "search_percent": 26.1,
        "social_percent": 24.33,
        "referral_percent": 10.25,
        "email_percent": 4.14,
        "paid_percent": 4.39
    },
    "seo_profile": {
        "backlinks_total": 3,
        "referring_domains": 3,
        "dofollow_backlinks_percent": 100,
        "organic_keywords": 80,
        "indexed_pages": 30,
        "page_speed_score": 100,
        "mobile_friendliness_score": 87,
        "authority_score": 47,
        "spam_risk_score": 24
    },
    "crawl_report": {
        "robots_status": 0,
        "sitemap_status": 0,
        "sitemap_total_urls": 0,
        "crawl_blocked": false,
        "crawl_blocked_by": "",
        "crawl_blocked_reason": "",
        "notes": [
            "robots.txt could not be confirmed.",
            "Sitemap could not be confirmed."
        ],
        "created_at": "2026-03-22 22:03:28"
    },
    "keywords": [
        {
            "keyword": "Fork it",
            "position": 19,
            "search_engine": "Estimated",
            "checked_at": "2026-04-13 14:50:55",
            "is_estimated": true
        },
        {
            "keyword": "Fork it social media",
            "position": 21,
            "search_engine": "Estimated",
            "checked_at": "2026-04-13 14:50:55",
            "is_estimated": true
        },
        {
            "keyword": "Fork it reviews",
            "position": 23,
            "search_engine": "Estimated",
            "checked_at": "2026-04-13 14:50:55",
            "is_estimated": true
        },
        {
            "keyword": "fork",
            "position": 25,
            "search_engine": "Estimated",
            "checked_at": "2026-04-13 14:50:55",
            "is_estimated": true
        },
        {
            "keyword": "forkit",
            "position": 27,
            "search_engine": "Estimated",
            "checked_at": "2026-04-13 14:50:55",
            "is_estimated": true
        },
        {
            "keyword": "community",
            "position": 29,
            "search_engine": "Estimated",
            "checked_at": "2026-04-13 14:50:55",
            "is_estimated": true
        },
        {
            "keyword": "global",
            "position": 31,
            "search_engine": "Estimated",
            "checked_at": "2026-04-13 14:50:55",
            "is_estimated": true
        },
        {
            "keyword": "developer",
            "position": 33,
            "search_engine": "Estimated",
            "checked_at": "2026-04-13 14:50:55",
            "is_estimated": true
        }
    ],
    "rating": {
        "overall": 64,
        "label": "Healthy",
        "breakdown": [
            {
                "label": "Technical foundation",
                "score": 11,
                "max": 18
            },
            {
                "label": "Authority & trust",
                "score": 14,
                "max": 30
            },
            {
                "label": "Reach & market presence",
                "score": 3,
                "max": 18
            },
            {
                "label": "Search visibility",
                "score": 3,
                "max": 12
            },
            {
                "label": "Engagement & retention",
                "score": 9,
                "max": 10
            },
            {
                "label": "Channels & diversification",
                "score": 5,
                "max": 6
            },
            {
                "label": "Registry stability",
                "score": 3,
                "max": 6
            },
            {
                "label": "Quality system",
                "score": 61,
                "max": 100
            },
            {
                "label": "Reputation system",
                "score": 45,
                "max": 100
            },
            {
                "label": "Safety system",
                "score": 100,
                "max": 100
            },
            {
                "label": "Evidence confidence",
                "score": 53,
                "max": 100
            },
            {
                "label": "External intelligence",
                "score": 50,
                "max": 100
            }
        ],
        "authority_score": 47,
        "quality_score": 61,
        "reputation_score": 45,
        "safety_score": 100,
        "confidence_score": 53,
        "fraud_score": 1,
        "authority_signals": {
            "backlinks": 3,
            "referring_domains": 3,
            "organic_keywords": 80,
            "indexed_pages": 30,
            "monthly_visitors": 135,
            "global_rank": 15099,
            "engagement_score": 88,
            "crawl_quality_score": 97,
            "brand_completeness_score": 71,
            "link_diversity_score": 94,
            "technical_reliability_score": 74,
            "whois_score": 59,
            "whois_age_years": 2.4,
            "whois_stability_score": 100,
            "spam_penalty": 0
        },
        "whois_signals": {
            "age_years": 2.4,
            "days_to_expiry": 222,
            "days_since_last_registry_update": 97,
            "stability_score": 100,
            "registrar_changes": 0,
            "ownership_changes": 0,
            "nameserver_changes": 0,
            "status_changes": 0,
            "history_entries": 1,
            "privacy_protected": false,
            "dnssec_enabled": false,
            "has_registrant_country": false,
            "registrant_country": "",
            "nameserver_count": 2,
            "status_count": 2
        }
    },
    "authority_score": 47,
    "trust_score": 63,
    "domain_tags": {
        "primary_tag": "T",
        "primary_tag_score": 80,
        "primary_candidate": "T",
        "primary_candidate_score": 80,
        "tag_codes": "T,Uncertain",
        "tags": [
            {
                "code": "T",
                "label": "Trusted",
                "tone": "good",
                "description": "Strong trust, stability, and low-risk signals were detected.",
                "reason": "Low spam indicators plus strong trust, quality, registry, and stability signals were detected. Showing the stored external intelligence snapshot. New search and review intelligence only runs after a visitor uses Refresh data manually.",
                "message": "The site shows a reasonably trustworthy and stable profile.",
                "priority": 80,
                "score": 80,
                "match_percent": 80,
                "threshold_band": "strong"
            },
            {
                "code": "Uncertain",
                "label": "Uncertain",
                "tone": "unknown",
                "description": "External checks stayed inconclusive, so the model avoided a harder verdict.",
                "reason": "The evidence is mixed and external checks stayed inconclusive, so the system kept an uncertainty buffer instead of a harder automated verdict.",
                "message": "The evidence is materially mixed or partially corroborated, so the model is avoiding a harder verdict.",
                "priority": 68,
                "score": 68,
                "match_percent": 68,
                "threshold_band": "strong"
            }
        ],
        "tag_breakdown": [
            {
                "code": "T",
                "label": "Trusted",
                "tone": "good",
                "description": "Strong trust, stability, and low-risk signals were detected.",
                "reason": "Low spam indicators plus strong trust, quality, registry, and stability signals were detected. Showing the stored external intelligence snapshot. New search and review intelligence only runs after a visitor uses Refresh data manually.",
                "message": "The site shows a reasonably trustworthy and stable profile.",
                "priority": 80,
                "score": 80,
                "match_percent": 80,
                "threshold_band": "strong"
            },
            {
                "code": "Uncertain",
                "label": "Uncertain",
                "tone": "unknown",
                "description": "External checks stayed inconclusive, so the model avoided a harder verdict.",
                "reason": "The evidence is mixed and external checks stayed inconclusive, so the system kept an uncertainty buffer instead of a harder automated verdict.",
                "message": "The evidence is materially mixed or partially corroborated, so the model is avoiding a harder verdict.",
                "priority": 68,
                "score": 68,
                "match_percent": 68,
                "threshold_band": "strong"
            },
            {
                "code": "Infra",
                "label": "Risky infrastructure",
                "tone": "caution",
                "description": "The hosting / registrar / nameserver neighbourhood looks unusually risky.",
                "reason": "The infrastructure neighbourhood looks riskier than normal.",
                "message": "Infrastructure risk does not currently stand out.",
                "priority": 3,
                "score": 3,
                "match_percent": 3,
                "threshold_band": "none"
            },
            {
                "code": "C",
                "label": "Caution",
                "tone": "caution",
                "description": "Signals are mixed or weak, so this domain should be treated carefully.",
                "reason": "Review carefully: mixed trust signals. Showing the stored external intelligence snapshot. New search and review intelligence only runs after a visitor uses Refresh data manually.",
                "message": "The current crawl does not show a meaningful caution match.",
                "priority": 0,
                "score": 0,
                "match_percent": 0,
                "threshold_band": "none"
            },
            {
                "code": "Crypto",
                "label": "Crypto drainer risk",
                "tone": "toxic",
                "description": "Wallet-connect or seed-phrase theft patterns were detected.",
                "reason": "Wallet-connect or seed-phrase theft patterns were detected.",
                "message": "No meaningful crypto-drainer signals were detected.",
                "priority": 0,
                "score": 0,
                "match_percent": 0,
                "threshold_band": "none"
            }
        ],
        "nsfw_score": 0,
        "trust_score": 64,
        "manual": {
            "has_changes": false,
            "verified_status": "",
            "tag_codes": "",
            "rating_delta": 0,
            "authority_delta": 0,
            "trust_delta": 0,
            "note": "",
            "adjusted_by": 0,
            "adjusted_at": "",
            "lock_scores": false,
            "lock_flags": false
        },
        "summary": "Trusted (80% match) because low spam indicators plus strong trust, quality, registry, and stability signals were detected. showing the stored external intelligence snapshot. new search and review intelligence only runs after a visitor uses refresh data manually.",
        "external_intel": {
            "domain": "forkit.community",
            "candidate_tag": "",
            "checked_at": "2026-03-18T05:11:25+00:00",
            "status": "fresh",
            "snapshot_version": 5,
            "summary": "Showing the stored external intelligence snapshot. New search and review intelligence only runs after a visitor uses Refresh data manually.",
            "search_intelligence": {
                "queries": [
                    "\"forkit.community\"",
                    "\"forkit.community\" official site",
                    "\"forkit.community\" reviews OR complaints",
                    "\"forkit.community\" reputation OR scam OR legit OR safe",
                    "\"forkit.community\" BBB OR LinkedIn OR Crunchbase OR \"Companies House\"",
                    "site:trustpilot.com \"forkit.community\"",
                    "site:sitejabber.com \"forkit.community\"",
                    "site:bbb.org \"forkit.community\"",
                    "site:linkedin.com \"forkit.community\"",
                    "site:crunchbase.com \"forkit.community\"",
                    "site:reddit.com \"forkit.community\"",
                    "site:virustotal.com \"forkit.community\"",
                    "site:urlscan.io \"forkit.community\"",
                    "site:urlhaus.abuse.ch \"forkit.community\"",
                    "\"forkit.community\" official",
                    "\"forkit.community\" review",
                    "\"www.forkit.community\" official",
                    "\"www.forkit.community\" review",
                    "site:trustpilot.com \"www.forkit.community\"",
                    "site:linkedin.com \"www.forkit.community\"",
                    "\"forkit\" \"community\" \"forkit.community\"",
                    "\"forkit.community\" reputation business profile review",
                    "\"forkit.community\" official company profile"
                ],
                "providers": [
                    "duckduckgo",
                    "bing"
                ],
                "results_found": 1,
                "results": [
                    {
                        "provider": "direct-domain-fallback",
                        "url": "https://forkit.community/",
                        "host": "forkit.community",
                        "title": "forkit.community",
                        "snippet": "First-party fallback captured directly from the domain when public search engines returned no usable results.",
                        "source_meta": {
                            "host": "forkit.community",
                            "source_type": "official_site",
                            "label": "General web result",
                            "trust_weight": 55,
                            "evidence_weight": 26,
                            "noise_penalty": 0,
                            "requires_exact_domain_match": true,
                            "supports_positive_verdicts": false,
                            "supports_negative_verdicts": true,
                            "freshness_ttl_days": 21
                        },
                        "entity": {
                            "score": 100,
                            "exactness": "exact_domain",
                            "reasons": [
                                "The result host matches the exact domain.",
                                "The exact domain is mentioned in the page snippet or document text.",
                                "The result URL contains the exact domain string."
                            ]
                        },
                        "query": "direct-fallback",
                        "rank": 1
                    }
                ],
                "source_mix": {
                    "official_site": 1
                },
                "entity_coverage_score": 100,
                "high_trust_result_count": 0,
                "exact_match_result_count": 1,
                "high_entity_result_count": 1,
                "query_hit_count": 1,
                "query_count": 23
            },
            "review_intelligence": {
                "documents_fetched": 1,
                "documents": [
                    {
                        "provider": "direct-domain-fallback",
                        "url": "https://forkit.community/",
                        "host": "forkit.community",
                        "title": "forkit.community",
                        "snippet": "First-party fallback captured directly from the domain when public search engines returned no usable results.",
                        "source_meta": {
                            "host": "forkit.community",
                            "source_type": "official_site",
                            "label": "General web result",
                            "trust_weight": 55,
                            "evidence_weight": 26,
                            "noise_penalty": 0,
                            "requires_exact_domain_match": true,
                            "supports_positive_verdicts": false,
                            "supports_negative_verdicts": true,
                            "freshness_ttl_days": 21
                        },
                        "entity": {
                            "score": 100,
                            "exactness": "exact_domain",
                            "reasons": [
                                "The result host matches the exact domain.",
                                "The exact domain is mentioned in the page snippet or document text.",
                                "The result URL contains the exact domain string."
                            ]
                        },
                        "query": "direct-fallback",
                        "rank": 1,
                        "body": "Fork it! Community | Global Developer Community Skip to content Hidden trigger Events Podcasts News More Global Developer Community Next Full Day Event April 18, 2026 Tunis, Tunisia Tickets available Other events June 05, 2026 Rouen, France Join the community Lu.ma LinkedIn Instagram Facebook Youtube WhatsApp Fork it! Newsletter Get the latest Fork it! udpates in your inbox. Join the Newsletter News Latest news about the global developer community. Monday, January 19, 2026 Fork it! For Kids #2: Interview & Feedback from the organizers Fork it! For Kids returns for a second edition, growing in scale, ambition, and impact. In this interview, lead organizer Jeanne Grenet reflects on the origins of the project, the challenges of welcoming nearly twice as many children, and the moments that confirmed the event’s success. With additional insight from workshop leader Noé Tatoud, this article looks back on what was learned—and forward to the future of Fork it! For Kids. Eléa Viscat--Provost Jeanne Grenet Noé Tatoud Continue Reading Friday, December 5, 2025 React Advanced London: Deep Dives and Warm Vibes React Advanced is one of Europe’s flagship conferences for experienced React engineers, bringing together maintainers, seasoned developers, and curious builders ready to explore the future of the React ecosystem. The event delivered warm reunions, standout technical talks—like explorations of custom React renderers and deep dives into tools like tldraw—and a lively after-party that perfectly captured the energy and camaraderie of the React community. Yoann Fleury Continue Reading Friday, September 26, 2025 10 years of API Platform The API Platform Conference in Lille celebrated the project’s 10th anniversary, bringing together over 400 developers and tech leaders. Talks covered PHP, Symfony, and the broader API ecosystem, highlighting both technical depth and community spirit. The event stood out as a memorable mix of learning, networking, and celebrating open source innovation. Yoann Fleury Continue Reading All news Podcasts Latest episodes about the global developer community. Listen to different podcasts in different languages. Learn from people around the world. All podcasts VODs Latest VODs about the global developer community. Watch different videos in different languages. Learn from people around the world. Advanced Unit Testing For Web Accessibility Talk in english Building a Web3 Startup in Malaysia Talk in english Creating engaging animations with React Native Talk in english Designing from the Margins: Building UX Culture Across Borders Talk in english All VODs Interested in speaking? Can't find a local event? Consider submitting to our global Call for Proposals. Fork it! Global CFP How to & Guidelines → What is Fork it! Community? Fork it! is a global tech community where real people share honest feedback, real-life experiences, and authentic stories. About Fork it! What is Fork it! For Kids? Fork it! For Kids is a series of events that introduces children to the world of technology and computer science through fun and engaging activities. Fork it! For Kids events Fork it! Partners This website is Open Source Fork it! on GitHub Home ⋅ Events ⋅ Podcasts ⋅ News ⋅ Videos ⋅ Community members ⋅ Conferences ⋅ For Kids ⋅ About Fork it! ⋅ Logo Assets ⋅ Media Kit ⋅ Code of Conduct ⋅ Call For Paper Guidelines ⋅ Cookie Settings ⋅ Privacy policy ⋅ Legal notice ⋅ Thank you © 2026 Fork it! Community. All rights reserved. Home Events Podcasts News More",
                        "html": "<!DOCTYPE html><html lang=\"en\" class=\"dark\"> <head><meta charset=\"utf-8\"><meta name=\"viewport\" content=\"width=device-width, initial-scale=1, viewport-fit=cover, interactive-widget=resizes-content\"><link rel=\"sitemap\" href=\"/sitemap-index.xml\"><link rel=\"alternate\" type=\"application/rss+xml\" title=\"Events\" href=\"/events/rss.xml\"><link rel=\"alternate\" type=\"application/rss+xml\" title=\"Podcasts\" href=\"/podcasts/rss.xml\"><link rel=\"manifest\" href=\"/site.webmanifest\"><meta name=\"generator\" content=\"Astro v6.0.5\"><meta name=\"theme-color\" content=\"#171717\"><title>Fork it! Community | Global Developer Community</title><link rel=\"canonical\" href=\"https://www.forkit.community/\"><meta name=\"description\" content=\"Fork it! Community’s mission is to share computer science knowledge through worldwide events.\"><meta name=\"robots\" content=\"index, follow\"><meta property=\"og:title\" content=\"Fork it! Community | Global Developer Community\"><meta property=\"og:type\" content=\"website\"><meta property=\"og:image\" content=\"https://www.forkit.community/opengraph-image.jpg\"><meta property=\"og:url\" content=\"https://www.forkit.community/\"><meta property=\"og:description\" content=\"Fork it! Community’s mission is to share computer science knowledge through worldwide events.\"><meta property=\"og:image:url\" content=\"https://www.forkit.community/opengraph-image.jpg\"><meta property=\"og:image:width\" content=\"1920\"><meta property=\"og:image:height\" content=\"1080\"><meta property=\"og:image:alt\" content=\"Fork it! Community\"><meta name=\"twitter:card\" content=\"summary_large_image\"><meta name=\"twitter:title\" content=\"Fork it! Community | Global Developer Community\"><meta name=\"twitter:image\" content=\"https://www.forkit.community/opengraph-image.jpg\"><meta name=\"twitter:image:alt\" content=\"Fork it! Community\"><meta name=\"twitter:description\" content=\"Fork it! Community’s mission is to share computer science knowledge through worldwide events.\"><script type=\"application/ld+json\">{\"@type\":\"WebSite\",\"@context\":\"https://schema.org\",\"name\":\"Fork it! Community\"}</script><link rel=\"stylesheet\" href=\"/orejime/orejime.css\"><script async src=\"/orejime/orejime.js\"></script><script>(function(){const orejimeConfig = {\"privacyPolicyUrl\":\"/privacy-policy\",\"cookie\":{\"name\":\"forkit-consent\",\"duration\":365},\"purposes\":[{\"id\":\"marketing\",\"title\":\"Marketing\",\"description\":\"We use Meta Pixel to measure advertising effectiveness and improve our marketing campaigns. This helps us understand which content resonates with our community.\",\"cookies\":[\"_fbp\",\"fr\"]},{\"id\":\"analytics\",\"title\":\"Analytics\",\"description\":\"We use Vercel Analytics and Clarity to understand how visitors navigate our website and identify areas for improvement. This helps us provide a better user experience.\",\"cookies\":[\"__vercel_live_token\",\"_vercel_jwt\",\"__va\",\"_clck\",\"_clsk\"]}],\"translations\":{\"banner\":{\"configure\":\"Learn more\"}}}; window.orejimeConfig = orejimeConfig; })();</script><link rel=\"stylesheet\" href=\"/_astro/index.DQ9J5uoA.css\"> <link rel=\"stylesheet\" href=\"/_astro/globals.Dwbos5OU.css\"></head> <body class=\"flex min-h-svh flex-col overflow-x-hidden overflow-y-scroll bg-black text-foreground\"> <a class=\"text-primary-content absolute left-0 m-3 -translate-y-16 bg-primary p-3 text-black transition focus:translate-y-0\" href=\"#main-content\">Skip to content</a> <div class=\"hidden md:block\"> <div class=\"h-16\"></div> <div class=\"fixed left-0 right-0 top-0 z-20 flex h-16 flex-col p-2\"> <div class=\"bg-background-blur mx-auto flex w-full max-w-screen-lg flex-1 items-center justify-between rounded-md pe-3 ps-5\"> <style>astro-island,astro-slot,astro-static-slot{display:contents}</style><script>(()=>{var e=async t=>{await(await t())()};(self.Astro||(self.Astro={})).load=e;window.dispatchEvent(new Event(\"astro:load\"));})();</script><script>(()=>{var A=Object.defineProperty;var g=(i,o,a)=>o in i?A(i,o,{enumerable:!0,configurable:!0,writable:!0,value:a}):i[o]=a;var d=(i,o,a)=>g(i,typeof o!=\"symbol\"?o+\"\":o,a);{let i={0:t=>m(t),1:t=>a(t),2:t=>new RegExp(t),3:t=>new Date(t),4:t=>new Map(a(t)),5:t=>new Set(a(t)),6:t=>BigInt(t),7:t=>new URL(t),8:t=>new Uint8Array(t),9:t=>new Uint16Array(t),10:t=>new Uint32Array(t),11:t=>Number.POSITIVE_INFINITY*t},o=t=>{let[l,e]=t;return l in i?i[l](e):void 0},a=t=>t.map(o),m=t=>typeof t!=\"object\"||t===null?t:Object.fromEntries(Object.entries(t).map(([l,e])=>[l,o(e)]));class y extends HTMLElement{constructor(){super(...arguments);d(this,\"Component\");d(this,\"hydrator\");d(this,\"hydrate\",async()=>{var b;if(!this.hydrator||!this.isConnected)return;let e=(b=this.parentElement)==null?void 0:b.closest(\"astro-island[ssr]\");if(e){e.addEventListener(\"astro:hydrate\",this.hydrate,{once:!0});return}let c=this.querySelectorAll(\"astro-slot\"),n={},h=this.querySelectorAll(\"template[data-astro-template]\");for(let r of h){let s=r.closest(this.tagName);s!=null&&s.isSameNode(this)&&(n[r.getAttribute(\"data-astro-template\")||\"default\"]=r.innerHTML,r.remove())}for(let r of c){let s=r.closest(this.tagName);s!=null&&s.isSameNode(this)&&(n[r.getAttribute(\"name\")||\"default\"]=r.innerHTML)}let p;try{p=this.hasAttribute(\"props\")?m(JSON.parse(this.getAttribute(\"props\"))):{}}catch(r){let s=this.getAttribute(\"com…"
                    }
                ],
                "facts": [],
                "ignored_candidates": [],
                "source_diversity": 0,
                "host_coverage": 1,
                "source_type_coverage": 1,
                "exact_match_documents": 1,
                "elapsed_ms": 588,
                "candidates_considered": 1,
                "fetch_success_rate": 100,
                "avg_source_trust": 55,
                "avg_entity_score": 100
            },
            "evidence": {
                "scores": {
                    "legit": 0,
                    "safe": 0,
                    "trusted": 0,
                    "caution": 0,
                    "scam": 0,
                    "dangerous": 0,
                    "spam": 0,
                    "nsfw": 0
                },
                "counts": {
                    "official_presence": 0,
                    "business_profiles": 0,
                    "positive_reviews": 0,
                    "negative_reviews": 0,
                    "scam_reports": 0,
                    "dangerous_reports": 0,
                    "spam_reports": 0,
                    "adult_reports": 0
                },
                "tag_support": [],
                "top_supporting_facts": [],
                "top_positive_facts": []
            },
            "quality": {
                "source_diversity_score": 0,
                "entity_coverage_score": 100,
                "freshness_score": 72,
                "confidence": 58,
                "documents_fetched": 1,
                "fact_count": 0,
                "avg_source_trust": 55,
                "avg_entity_score": 100,
                "fetch_success_rate": 100,
                "exact_match_score": 100,
                "query_coverage_score": 100,
                "host_coverage_score": 20,
                "source_type_coverage_score": 25,
                "qualified_evidence_score": 0,
                "exact_match_documents": 1
            },
            "decision": {
                "state": "insufficient",
                "uncertainty": true,
                "candidate_support": 0,
                "candidate_contradiction": 0,
                "supports": {
                    "dangerous": false,
                    "scam": false,
                    "spam": false,
                    "nsfw": false,
                    "trusted": false
                },
                "evidence_quality": "medium",
                "state_label": "Inconclusive",
                "state_reason": "The external set did not reach enough distinct trusted sources for a harder verdict."
            },
            "signals": {
                "scores": {
                    "legit": 0,
                    "safe": 0,
                    "trusted": 0,
                    "caution": 0,
                    "scam": 0,
                    "dangerous": 0,
                    "spam": 0,
                    "nsfw": 0
                },
                "counts": {
                    "official_presence": 0,
                    "business_profiles": 0,
                    "positive_reviews": 0,
                    "negative_reviews": 0,
                    "scam_reports": 0,
                    "dangerous_reports": 0,
                    "spam_reports": 0,
                    "adult_reports": 0
                },
                "candidate_support": 0,
                "candidate_contradiction": 0,
                "highlights": [
                    "External evidence remained inconclusive because diversity, exact matching, or confidence was still too weak."
                ]
            },
            "citations": [],
            "debug": {
                "top_supporting_facts": [],
                "top_positive_facts": [],
                "ignored_candidates": [],
                "budget_ms": 7000,
                "reason": "page-request",
                "priority": 80
            },
            "last_good": {
                "checked_at": "2026-03-18T05:11:25+00:00",
                "summary": "External checks ran, but the verified result set was still too sparse to harden the verdict.",
                "decision": {
                    "state": "insufficient",
                    "uncertainty": true,
                    "candidate_support": 0,
                    "candidate_contradiction": 0,
                    "supports": {
                        "dangerous": false,
                        "scam": false,
                        "spam": false,
                        "nsfw": false,
                        "trusted": false
                    },
                    "evidence_quality": "medium",
                    "state_label": "Inconclusive",
                    "state_reason": "The external set did not reach enough distinct trusted sources for a harder verdict."
                },
                "signals": {
                    "scores": {
                        "legit": 0,
                        "safe": 0,
                        "trusted": 0,
                        "caution": 0,
                        "scam": 0,
                        "dangerous": 0,
                        "spam": 0,
                        "nsfw": 0
                    },
                    "counts": {
                        "official_presence": 0,
                        "business_profiles": 0,
                        "positive_reviews": 0,
                        "negative_reviews": 0,
                        "scam_reports": 0,
                        "dangerous_reports": 0,
                        "spam_reports": 0,
                        "adult_reports": 0
                    },
                    "candidate_support": 0,
                    "candidate_contradiction": 0,
                    "highlights": [
                        "External evidence remained inconclusive because diversity, exact matching, or confidence was still too weak."
                    ]
                },
                "citations": []
            }
        },
        "external_decision": {
            "state": "insufficient",
            "uncertainty": true,
            "candidate_support": 0,
            "candidate_contradiction": 0,
            "supports": {
                "dangerous": false,
                "scam": false,
                "spam": false,
                "nsfw": false,
                "trusted": false
            },
            "evidence_quality": "medium",
            "state_label": "Inconclusive",
            "state_reason": "The external set did not reach enough distinct trusted sources for a harder verdict."
        },
        "signal_scores": [
            {
                "label": "Strongest tag heuristic",
                "value": "T · 80%",
                "tone": "good",
                "detail": "The highest raw tag match from the heuristic engine before visibility thresholds and manual overrides."
            },
            {
                "label": "Trust score",
                "value": "64/100",
                "tone": "caution",
                "detail": "Confidence derived from authority, crawl quality, stability, and risk signals."
            },
            {
                "label": "Authority score",
                "value": "47/100",
                "tone": "caution",
                "detail": "A higher authority score usually means broader reputation and backlink confidence."
            },
            {
                "label": "Spam risk",
                "value": "2/100",
                "tone": "good",
                "detail": "Lower is better. This blends spam indicators with false-positive protections for legitimate sites."
            },
            {
                "label": "Quality score",
                "value": "89/100",
                "tone": "good",
                "detail": "Based on crawl quality, content completeness, and technical evidence."
            },
            {
                "label": "Safety score",
                "value": "100/100",
                "tone": "good",
                "detail": "Higher is safer. Direct fraud signals can heavily cap this even when SEO signals look strong."
            },
            {
                "label": "Fraud score",
                "value": "1/100",
                "tone": "good",
                "detail": "Lower is better. This reflects phishing, drainer, fake-support, fake-shop, and malware signals."
            },
            {
                "label": "Infrastructure risk",
                "value": "3/100",
                "tone": "good",
                "detail": "Lower is better. This reflects the IP, registrar, and nameserver neighbourhood seen by the crawler."
            },
            {
                "label": "Evidence confidence",
                "value": "55/100",
                "tone": "caution",
                "detail": "Higher means the crawler had enough pages and registry evidence to make a stronger call."
            },
            {
                "label": "External evidence",
                "value": "Medium",
                "tone": "caution",
                "detail": "Quality of the structured search and review evidence cluster."
            },
            {
                "label": "External decision",
                "value": "Inconclusive",
                "tone": "unknown",
                "detail": "How third-party evidence compares with the current candidate tag."
            },
            {
                "label": "NSFW score",
                "value": "0/100",
                "tone": "good",
                "detail": "Context-aware adult-content detection with medical / educational false-positive reduction."
            },
            {
                "label": "Registry stability",
                "value": "100/100",
                "tone": "good",
                "detail": "Based on age, expiry runway, and the amount of ownership / registrar churn."
            }
        ],
        "signal_sections": [
            {
                "title": "Registry & ownership",
                "items": [
                    {
                        "label": "Domain age",
                        "value": "2.4 years",
                        "tone": "caution",
                        "detail": "Older domains generally carry more historical trust than very new ones."
                    },
                    {
                        "label": "Stability score",
                        "value": "100/100",
                        "tone": "good",
                        "detail": "Penalised by registrar, ownership, and nameserver churn."
                    },
                    {
                        "label": "Days to expiry",
                        "value": "222",
                        "tone": "good",
                        "detail": "Very short renewal windows can be a weak trust signal."
                    },
                    {
                        "label": "Registrar / ownership changes",
                        "value": "0 / 0",
                        "tone": "good",
                        "detail": "Frequent ownership churn can weaken trust."
                    },
                    {
                        "label": "Nameserver changes",
                        "value": "0",
                        "tone": "good",
                        "detail": "Repeated infrastructure changes can indicate instability."
                    },
                    {
                        "label": "DNSSEC / privacy",
                        "value": "DNSSEC off · privacy off",
                        "tone": "caution",
                        "detail": "DNSSEC strengthens DNS trust; privacy is neutral on its own."
                    }
                ]
            },
            {
                "title": "Reputation & search evidence",
                "items": [
                    {
                        "label": "Backlinks",
                        "value": "3",
                        "tone": "unknown",
                        "detail": "Broader backlink evidence usually improves confidence."
                    },
                    {
                        "label": "Referring domains",
                        "value": "3",
                        "tone": "unknown",
                        "detail": "Unique linking domains are more useful than raw link volume."
                    },
                    {
                        "label": "Organic keywords",
                        "value": "80",
                        "tone": "caution",
                        "detail": "Search footprint helps distinguish real sites from thin shells."
                    },
                    {
                        "label": "Indexed pages",
                        "value": "30",
                        "tone": "caution",
                        "detail": "Larger index coverage usually means more evidence to classify from."
                    },
                    {
                        "label": "Brand strength",
                        "value": "71/100",
                        "tone": "good",
                        "detail": "Stronger brand signals reduce false positives for legitimate sites."
                    },
                    {
                        "label": "Risk label",
                        "value": "GOOD",
                        "tone": "unknown",
                        "detail": "This is the raw crawl / heuristic risk label feeding the tag model."
                    }
                ]
            },
            {
                "title": "Crawl, content & technicals",
                "items": [
                    {
                        "label": "HTTP status",
                        "value": "200",
                        "tone": "good",
                        "detail": "Healthy responses make classification more reliable."
                    },
                    {
                        "label": "HTTPS / speed",
                        "value": "HTTPS OK · 128 ms",
                        "tone": "good",
                        "detail": "Slow or broken technical signals weaken confidence."
                    },
                    {
                        "label": "Content words",
                        "value": "827",
                        "tone": "good",
                        "detail": "Thin pages are harder to trust and easier to manipulate."
                    },
                    {
                        "label": "Schema / structure",
                        "value": "1 schema · meta · H1",
                        "tone": "caution",
                        "detail": "Structured markup and basic on-page hygiene improve quality confidence."
                    },
                    {
                        "label": "Links on page",
                        "value": "29 internal · 17 external",
                        "tone": "good",
                        "detail": "Link patterns help detect thin directories and promo pages."
                    },
                    {
                        "label": "Page speed / mobile",
                        "value": "100/100 · 87/100",
                        "tone": "good",
                        "detail": "Better technical quality generally reduces low-effort site patterns."
                    },
                    {
                        "label": "Crawl access",
                        "value": "Open",
                        "tone": "good",
                        "detail": "The crawler reached the site without an anti-bot challenge."
                    }
                ]
            },
            {
                "title": "External evidence & explainability",
                "items": [
                    {
                        "label": "Decision state",
                        "value": "Inconclusive",
                        "tone": "unknown",
                        "detail": "The external set did not reach enough distinct trusted sources for a harder verdict."
                    },
                    {
                        "label": "Evidence quality",
                        "value": "Medium",
                        "tone": "caution",
                        "detail": "Blends source trust, domain matching, evidence diversity, and freshness."
                    },
                    {
                        "label": "Support vs contradiction",
                        "value": "0 / 0",
                        "tone": "unknown",
                        "detail": "Compares how much structured external evidence supports the candidate tag against evidence that contradicts it."
                    },
                    {
                        "label": "Qualified risk sources",
                        "value": "No",
                        "tone": "good",
                        "detail": "Risk tags only promote from external evidence when source diversity or source trust thresholds are met."
                    },
                    {
                        "label": "Uncertainty buffer",
                        "value": "Active",
                        "tone": "caution",
                        "detail": "Prevents thin or mixed external evidence from forcing a stronger tag than the evidence can justify."
                    }
                ]
            }
        ],
        "positives": [
            "Low registrar / ownership churn with solid registry stability.",
            "Healthy crawl quality and on-page completeness."
        ],
        "risks": [
            "External evidence was mixed or sparse, so the tag model keeps an uncertainty buffer instead of overcommitting."
        ]
    },
    "traffic_confidence": 42,
    "whois": {
        "current": {
            "id": 5893,
            "domain": "forkit.community",
            "source_type": "rdap",
            "rdap_url": "https://rdap.identitydigital.services/rdap/domain/forkit.community",
            "registrar_name": "OVH SAS",
            "registrar_handle": "433",
            "registrant_name": "",
            "registrant_org": "",
            "registrant_country": "",
            "registrant_email": "",
            "abuse_email": "",
            "created_date": "2023-11-22 11:56:18",
            "updated_date": "2026-01-06 11:56:37",
            "expires_date": "2026-11-22 11:56:18",
            "nameservers_json": "[\"dns102.ovh.net\",\"ns102.ovh.net\"]",
            "status_json": "[\"client delete prohibited\",\"client transfer prohibited\"]",
            "dnssec": "unsigned",
            "privacy_protected": 0,
            "content_hash": "631bc82f78c4658ca5a331d1f67a3c0eb56379cd4801c6f8bd60d05547376857",
            "history_count": 1,
            "last_checked_at": "2026-03-17 00:30:41",
            "last_changed_at": "2026-03-17 00:30:41",
            "created_at": "2026-03-17 00:30:41",
            "updated_at": "2026-03-17 00:30:41"
        },
        "history": [
            {
                "id": 6206,
                "domain": "forkit.community",
                "source_type": "rdap",
                "registrar_name": "OVH SAS",
                "registrar_handle": "433",
                "registrant_name": "",
                "registrant_org": "",
                "registrant_country": "",
                "registrant_email": "",
                "abuse_email": "",
                "created_date": "2023-11-22 11:56:18",
                "updated_date": "2026-01-06 11:56:37",
                "expires_date": "2026-11-22 11:56:18",
                "nameservers_json": "[\"dns102.ovh.net\",\"ns102.ovh.net\"]",
                "status_json": "[\"client delete prohibited\",\"client transfer prohibited\"]",
                "dnssec": "unsigned",
                "privacy_protected": 0,
                "content_hash": "631bc82f78c4658ca5a331d1f67a3c0eb56379cd4801c6f8bd60d05547376857",
                "checked_at": "2026-03-17 00:30:41",
                "change_summary": "Initial WHOIS snapshot captured.",
                "created_at": "2026-03-17 00:30:41"
            }
        ],
        "signals": {
            "age_years": 2.4,
            "days_to_expiry": 222,
            "days_since_last_registry_update": 97,
            "stability_score": 100,
            "registrar_changes": 0,
            "ownership_changes": 0,
            "nameserver_changes": 0,
            "status_changes": 0,
            "history_entries": 1,
            "privacy_protected": false,
            "dnssec_enabled": false,
            "has_registrant_country": false,
            "registrant_country": "",
            "nameserver_count": 2,
            "status_count": 2
        }
    },
    "discovered_domain": {
        "id": 166885,
        "domain": "forkit.community",
        "first_seen_at": "2026-03-17 00:27:43",
        "last_crawled_at": "2026-03-22 22:03:28",
        "last_title": "Fork it! Community | Global Developer Community",
        "last_http_status": 200,
        "discovered_from_domain": "react.paris",
        "depth": 1,
        "backlinks_count": 3,
        "rating_cache": 42,
        "spam_score": 24,
        "risk_label": "good",
        "category_name": "Social Media",
        "primary_country_code": "",
        "internal_links_count": 29,
        "external_links_count": 17,
        "social_profiles_count": 6,
        "content_word_count": 827,
        "title_quality_score": 93,
        "has_meta_description": 1,
        "has_h1": 1,
        "language_code": "en",
        "response_time_ms": 128,
        "robots_status": 0,
        "sitemap_status": 0,
        "sitemap_total_urls": 0,
        "quality_score": 89,
        "site_name": "",
        "canonical_domain": "",
        "favicon_present": 0,
        "schema_org_count": 1,
        "noindex_detected": 0,
        "feed_links_count": 2,
        "https_working": 1,
        "estimated_authority_score": 36,
        "trust_score": 84,
        "nsfw_score": 0,
        "overall_rank_estimate": 2980079,
        "primary_tag": "C",
        "tag_codes": "C,Uncertain",
        "manual_verified_status": "",
        "manual_tag_codes": "",
        "manual_rating_delta": 0,
        "manual_authority_delta": 0,
        "manual_trust_delta": 0,
        "manual_note": null,
        "manual_adjusted_by": null,
        "manual_adjusted_at": null,
        "manual_lock_scores": 0,
        "manual_lock_flags": 0,
        "crawl_blocked": 0,
        "crawl_blocked_by": "",
        "crawl_blocked_reason": null,
        "safety_score": 100,
        "fraud_score": 1,
        "legitimacy_score": 45,
        "infrastructure_risk_score": 3,
        "score_confidence": 53,
        "tag_confidence": 27,
        "category_confidence": 24,
        "deep_crawl_pages": 0,
        "resolved_ip": "76.76.21.21",
        "category_candidates_json": "[{\"category\":\"Social Media\",\"score\":22},{\"category\":\"Social Media\",\"score\":17},{\"category\":\"Science\",\"score\":17},{\"category\":\"Business\",\"score\":6}]",
        "page_signals_json": "[]",
        "score_reasons_json": "[\"Category confidence was reduced, so the classifier fell back to the broader parent category.\",\"Category evidence stayed thin, so the output was softened to a broader classification.\",\"Trusted status now requires clean crawl access and stronger confidence, so this result was downgraded to caution.\",\"Overall rating is now capped by evidence confidence to prevent inflated scores from thin signals.\"]",
        "route_domain": "forkit.community",
        "display_domain": "forkit.community"
    },
    "explainability": {
        "summary": "forkit.community currently scores 64/100. The score is being shaped by a mixed signal profile rather than one dominant factor. Evidence confidence is moderate, so the score should settle further after more crawl depth or registry checks. This is an estimated profile rather than a manually tracked one. Crawler access looks clean.",
        "badges": [
            {
                "label": "Profile",
                "value": "Estimated profile",
                "tone": "unknown",
                "detail": null
            },
            {
                "label": "Evidence confidence",
                "value": "Moderate confidence",
                "tone": "caution",
                "detail": "53/100"
            },
            {
                "label": "Traffic confidence",
                "value": "Moderate confidence",
                "tone": "caution",
                "detail": "42/100"
            },
            {
                "label": "Crawler access",
                "value": "Clean visibility",
                "tone": "good",
                "detail": null
            }
        ],
        "weighted_contributions": [
            {
                "label": "Quality system",
                "points": "+20.7",
                "tone": "caution",
                "detail": "Technical quality, crawl depth, page structure, and implementation hygiene. Current subsystem score: 61/100."
            },
            {
                "label": "Reputation system",
                "points": "+15.3",
                "tone": "caution",
                "detail": "Authority, search visibility, reach, engagement, and registry stability. Current subsystem score: 45/100."
            },
            {
                "label": "Safety system",
                "points": "+32.0",
                "tone": "good",
                "detail": "Fraud, spam, and trust signals from infrastructure, crawl, and registry evidence. Current subsystem score: 100/100."
            },
            {
                "label": "Risk clamp",
                "points": "-4.0",
                "tone": "risk",
                "detail": "Safety thresholds capped the final score until the risk profile improves."
            }
        ],
        "evidence_cards": [
            {
                "label": "Authority and trust",
                "value": "47/100 · trust 63/100",
                "tone": "caution",
                "detail": "135 monthly visitors, 80 organic keywords, brand completeness 71/100, engagement 88/100."
            },
            {
                "label": "Backlink and search evidence",
                "value": "3 referring domains",
                "tone": "good",
                "detail": "3 backlinks across 3 referring domains. Diversity 94/100; spam penalty 0."
            },
            {
                "label": "Registry and domain stability",
                "value": "2.4 years old",
                "tone": "good",
                "detail": "Stability 100/100 · age 2.4 years · registrar OVH SAS · expires in 222 days."
            },
            {
                "label": "Safety and fraud posture",
                "value": "Safety 100/100 · fraud 1/100",
                "tone": "good",
                "detail": "Primary tag T · safety 100/100 · fraud 1/100."
            }
        ],
        "positives": [
            "Low registrar / ownership churn with solid registry stability.",
            "Healthy crawl quality and on-page completeness.",
            "Registry history looks stable, which supports legitimacy and trust.",
            "HTTPS is working, so the site clears a basic transport-security check.",
            "Backlink diversity looks broad enough to strengthen authority confidence."
        ],
        "risks": [
            "External evidence was mixed or sparse, so the tag model keeps an uncertainty buffer instead of overcommitting.",
            "Traffic and reach estimates are still low confidence, so commercial scale signals may move after more evidence is collected."
        ],
        "freshness": [
            {
                "label": "Crawl evidence",
                "value": "2026-03-22 22:03:28",
                "tone": "risk",
                "detail": "Crawl and page content sample. Age: 21d ago."
            },
            {
                "label": "WHOIS snapshot",
                "value": "2026-03-17 00:30:41",
                "tone": "risk",
                "detail": "Registry profile and stability signals. Age: 27d ago."
            },
            {
                "label": "Keyword view",
                "value": "2026-04-13 14:50:55",
                "tone": "good",
                "detail": "Estimated visibility until tracked keyword snapshots exist. Age: 0s ago."
            },
            {
                "label": "Rank history",
                "value": "2026-04-13 14:50:55",
                "tone": "good",
                "detail": "Estimated trend derived from current profile and crawl signals. Age: 0s ago."
            },
            {
                "label": "Audience geography",
                "value": "Not captured yet",
                "tone": "unknown",
                "detail": "Audience mix is estimated from available signals rather than first-party audience logs."
            }
        ],
        "section_notes": {
            "audience": "Audience geography is estimated from category, country, traffic mix, and brand signals until first-party audience data is collected.",
            "keywords": "Top keywords are estimated from crawl language, brand, category, and visibility signals until tracked keyword snapshots are stored.",
            "history": "Rank history is estimated from the current profile because no stored history exists for this domain yet."
        },
        "base_weighted_score": 68,
        "fraud_clamp_penalty": 4,
        "final_score": 64
    },
    "insight_snapshot": {
        "version": 1,
        "generated_at": "2026-04-13T14:50:55+00:00",
        "domain": "forkit.community",
        "display_name": "Fork it",
        "is_tracked": false,
        "is_estimated": true,
        "overall_score": 64,
        "authority_score": 47,
        "trust_score": 63,
        "safety_score": 100,
        "fraud_score": 1,
        "confidence_score": 53,
        "traffic_confidence": 42,
        "last_crawled_at": "2026-03-22 22:03:28",
        "crawl_blocked": false,
        "summary": "forkit.community currently scores 64/100. The score is being shaped by a mixed signal profile rather than one dominant factor. Evidence confidence is moderate, so the score should settle further after more crawl depth or registry checks. This is an estimated profile rather than a manually tracked one. Crawler access looks clean.",
        "badges": [
            {
                "label": "Profile",
                "value": "Estimated profile",
                "tone": "unknown",
                "detail": null
            },
            {
                "label": "Evidence confidence",
                "value": "Moderate confidence",
                "tone": "caution",
                "detail": "53/100"
            },
            {
                "label": "Traffic confidence",
                "value": "Moderate confidence",
                "tone": "caution",
                "detail": "42/100"
            },
            {
                "label": "Crawler access",
                "value": "Clean visibility",
                "tone": "good",
                "detail": null
            }
        ],
        "top_positive_signals": [
            "Low registrar / ownership churn with solid registry stability.",
            "Healthy crawl quality and on-page completeness.",
            "Registry history looks stable, which supports legitimacy and trust.",
            "HTTPS is working, so the site clears a basic transport-security check.",
            "Backlink diversity looks broad enough to strengthen authority confidence."
        ],
        "top_risk_signals": [
            "External evidence was mixed or sparse, so the tag model keeps an uncertainty buffer instead of overcommitting.",
            "Traffic and reach estimates are still low confidence, so commercial scale signals may move after more evidence is collected."
        ],
        "freshness": [
            {
                "label": "Crawl evidence",
                "value": "2026-03-22 22:03:28",
                "tone": "risk",
                "detail": "Crawl and page content sample. Age: 21d ago."
            },
            {
                "label": "WHOIS snapshot",
                "value": "2026-03-17 00:30:41",
                "tone": "risk",
                "detail": "Registry profile and stability signals. Age: 27d ago."
            },
            {
                "label": "Keyword view",
                "value": "2026-04-13 14:50:55",
                "tone": "good",
                "detail": "Estimated visibility until tracked keyword snapshots exist. Age: 0s ago."
            },
            {
                "label": "Rank history",
                "value": "2026-04-13 14:50:55",
                "tone": "good",
                "detail": "Estimated trend derived from current profile and crawl signals. Age: 0s ago."
            },
            {
                "label": "Audience geography",
                "value": "Not captured yet",
                "tone": "unknown",
                "detail": "Audience mix is estimated from available signals rather than first-party audience logs."
            }
        ],
        "top_tags": [
            {
                "code": "T",
                "label": "Trusted",
                "tone": "good"
            },
            {
                "code": "Uncertain",
                "label": "Uncertain",
                "tone": "unknown"
            }
        ]
    },
    "is_tracked": false,
    "is_estimated": true,
    "live_state": {
        "status": "processing",
        "status_label": "Cache build running",
        "message": "The refreshed page cache is still being built for this domain.",
        "updated_at": "2026-04-13T16:21:10+00:00"
    },
    "refresh_state": {
        "canRequest": false,
        "queued": true,
        "processing": true,
        "stageKey": "cache-queued",
        "stageLabel": "Cache build running",
        "cooldownUntil": null,
        "message": "The refreshed page cache is still being built for this domain.",
        "action": "/domain/forkit.community/refresh",
        "isGuestCooldown": false,
        "cooldownSeconds": 0
    },
    "urlscan_report": {
        "domain": "forkit.community",
        "status": "idle",
        "submitted_at": null,
        "completed_at": null,
        "last_checked_at": null,
        "last_error": "",
        "submitted_url": "https://forkit.community/",
        "uuid": "",
        "result_url": "",
        "api_result_url": "",
        "visibility": "public",
        "summary": "No urlscan.io report has been requested for this domain yet.",
        "report": [],
        "report_summary": [],
        "is_fresh": false,
        "can_retry": true,
        "poll_after_seconds": 20
    }
}