{
    "ready": true,
    "site": {
        "id": 0,
        "domain": "iain.in",
        "display_name": "iain nash",
        "primary_country_code": "IN",
        "category_name": "Business: Corporate & Professional Services"
    },
    "metrics": {
        "global_rank": 43293,
        "country_rank": 120,
        "category_rank": 14269,
        "daily_pageviews_per_visitor": 3.52,
        "daily_time_on_site_seconds": 287,
        "bounce_rate": 37.44,
        "search_visits_percent": 36.6,
        "total_sites_linking_in": 1,
        "monthly_unique_visitors": 67,
        "recorded_at": "2026-03-20 23:22:56"
    },
    "audit": {
        "score": 66
    },
    "traffic_sources": {
        "direct_percent": 25.88,
        "search_percent": 31.91,
        "social_percent": 12.62,
        "referral_percent": 12.6,
        "email_percent": 6.24,
        "paid_percent": 10.75
    },
    "seo_profile": {
        "backlinks_total": 1,
        "referring_domains": 1,
        "dofollow_backlinks_percent": 100,
        "organic_keywords": 64,
        "indexed_pages": 3,
        "page_speed_score": 97,
        "mobile_friendliness_score": 65,
        "authority_score": 37,
        "spam_risk_score": 37
    },
    "crawl_report": {
        "robots_status": 404,
        "sitemap_status": 404,
        "sitemap_total_urls": 0,
        "crawl_blocked": false,
        "crawl_blocked_by": "",
        "crawl_blocked_reason": "",
        "notes": [
            "Meta description is missing.",
            "robots.txt could not be confirmed.",
            "Sitemap could not be confirmed."
        ],
        "created_at": "2026-03-20 23:22:56"
    },
    "keywords": [
        {
            "keyword": "iain nash",
            "position": 22,
            "search_engine": "Estimated",
            "checked_at": "2026-04-19 00:09:41",
            "is_estimated": true
        },
        {
            "keyword": "iain nash business: corporate & professional services",
            "position": 24,
            "search_engine": "Estimated",
            "checked_at": "2026-04-19 00:09:41",
            "is_estimated": true
        },
        {
            "keyword": "iain nash reviews",
            "position": 26,
            "search_engine": "Estimated",
            "checked_at": "2026-04-19 00:09:41",
            "is_estimated": true
        },
        {
            "keyword": "iain",
            "position": 28,
            "search_engine": "Estimated",
            "checked_at": "2026-04-19 00:09:41",
            "is_estimated": true
        },
        {
            "keyword": "nash",
            "position": 30,
            "search_engine": "Estimated",
            "checked_at": "2026-04-19 00:09:41",
            "is_estimated": true
        },
        {
            "keyword": "career",
            "position": 32,
            "search_engine": "Estimated",
            "checked_at": "2026-04-19 00:09:41",
            "is_estimated": true
        },
        {
            "keyword": "about",
            "position": 34,
            "search_engine": "Estimated",
            "checked_at": "2026-04-19 00:09:41",
            "is_estimated": true
        },
        {
            "keyword": "login",
            "position": 36,
            "search_engine": "Estimated",
            "checked_at": "2026-04-19 00:09:41",
            "is_estimated": true
        }
    ],
    "rating": {
        "overall": 61,
        "label": "Healthy",
        "breakdown": [
            {
                "label": "Technical foundation",
                "score": 8,
                "max": 18
            },
            {
                "label": "Authority & trust",
                "score": 11,
                "max": 30
            },
            {
                "label": "Reach & market presence",
                "score": 3,
                "max": 18
            },
            {
                "label": "Search visibility",
                "score": 3,
                "max": 12
            },
            {
                "label": "Engagement & retention",
                "score": 8,
                "max": 10
            },
            {
                "label": "Channels & diversification",
                "score": 5,
                "max": 6
            },
            {
                "label": "Registry stability",
                "score": 5,
                "max": 6
            },
            {
                "label": "Quality system",
                "score": 44,
                "max": 100
            },
            {
                "label": "Reputation system",
                "score": 43,
                "max": 100
            },
            {
                "label": "Safety system",
                "score": 99,
                "max": 100
            },
            {
                "label": "Evidence confidence",
                "score": 84,
                "max": 100
            }
        ],
        "authority_score": 37,
        "quality_score": 44,
        "reputation_score": 43,
        "safety_score": 99,
        "confidence_score": 84,
        "fraud_score": 2,
        "authority_signals": {
            "backlinks": 1,
            "referring_domains": 1,
            "organic_keywords": 64,
            "indexed_pages": 3,
            "monthly_visitors": 67,
            "global_rank": 43293,
            "engagement_score": 75,
            "crawl_quality_score": 66,
            "brand_completeness_score": 43,
            "link_diversity_score": 92,
            "technical_reliability_score": 66,
            "whois_score": 75,
            "whois_age_years": 16.7,
            "whois_stability_score": 100,
            "spam_penalty": 3
        },
        "whois_signals": {
            "age_years": 16.7,
            "days_to_expiry": 108,
            "days_since_last_registry_update": 281,
            "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": 1
        }
    },
    "authority_score": 37,
    "trust_score": 46,
    "domain_tags": {
        "primary_tag": "Uncertain",
        "primary_tag_score": 68,
        "primary_candidate": "Uncertain",
        "primary_candidate_score": 68,
        "tag_codes": "Uncertain,T",
        "tags": [
            {
                "code": "Uncertain",
                "label": "Uncertain",
                "tone": "unknown",
                "description": "External checks stayed inconclusive, so the model avoided a harder verdict.",
                "reason": "The evidence is mixed or only partially corroborated, so the system avoided 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": "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.",
                "message": "The site shows a reasonably trustworthy and stable profile.",
                "priority": 67,
                "score": 67,
                "match_percent": 67,
                "threshold_band": "strong"
            }
        ],
        "tag_breakdown": [
            {
                "code": "Uncertain",
                "label": "Uncertain",
                "tone": "unknown",
                "description": "External checks stayed inconclusive, so the model avoided a harder verdict.",
                "reason": "The evidence is mixed or only partially corroborated, so the system avoided 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": "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.",
                "message": "The site shows a reasonably trustworthy and stable profile.",
                "priority": 67,
                "score": 67,
                "match_percent": 67,
                "threshold_band": "strong"
            },
            {
                "code": "Spam",
                "label": "Spam",
                "tone": "spam",
                "description": "Manipulative, low-quality, or overly promotional patterns were detected.",
                "reason": "Spam score 38/100 with very thin crawl signals.",
                "message": "No meaningful spam-pattern match was detected.",
                "priority": 12,
                "score": 12,
                "match_percent": 12,
                "threshold_band": "none"
            },
            {
                "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": 10,
                "score": 10,
                "match_percent": 10,
                "threshold_band": "none"
            },
            {
                "code": "D",
                "label": "Dangerous",
                "tone": "toxic",
                "description": "Strong signs of phishing, malware, or other harmful behaviour were detected.",
                "reason": "Very high spam signals were detected alongside suspicious domain or thin-content patterns.",
                "message": "No meaningful dangerous-signal match was detected.",
                "priority": 9,
                "score": 9,
                "match_percent": 9,
                "threshold_band": "none"
            }
        ],
        "nsfw_score": 0,
        "trust_score": 47,
        "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": "Uncertain (68% match) because the evidence is mixed or only partially corroborated, so the system avoided a harder automated verdict.",
        "external_intel": [],
        "external_decision": [],
        "signal_scores": [
            {
                "label": "Strongest tag heuristic",
                "value": "Uncertain · 68%",
                "tone": "unknown",
                "detail": "The highest raw tag match from the heuristic engine before visibility thresholds and manual overrides."
            },
            {
                "label": "Trust score",
                "value": "47/100",
                "tone": "caution",
                "detail": "Confidence derived from authority, crawl quality, stability, and risk signals."
            },
            {
                "label": "Authority score",
                "value": "37/100",
                "tone": "caution",
                "detail": "A higher authority score usually means broader reputation and backlink confidence."
            },
            {
                "label": "Spam risk",
                "value": "38/100",
                "tone": "caution",
                "detail": "Lower is better. This blends spam indicators with false-positive protections for legitimate sites."
            },
            {
                "label": "Quality score",
                "value": "60/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": "2/100",
                "tone": "good",
                "detail": "Lower is better. This reflects phishing, drainer, fake-support, fake-shop, and malware signals."
            },
            {
                "label": "Infrastructure risk",
                "value": "10/100",
                "tone": "good",
                "detail": "Lower is better. This reflects the IP, registrar, and nameserver neighbourhood seen by the crawler."
            },
            {
                "label": "Evidence confidence",
                "value": "96/100",
                "tone": "good",
                "detail": "Higher means the crawler had enough pages and registry evidence to make a stronger call."
            },
            {
                "label": "External evidence",
                "value": "Low",
                "tone": "unknown",
                "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": "16.7 years",
                        "tone": "good",
                        "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": "108",
                        "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": "1",
                        "tone": "unknown",
                        "detail": "Broader backlink evidence usually improves confidence."
                    },
                    {
                        "label": "Referring domains",
                        "value": "1",
                        "tone": "unknown",
                        "detail": "Unique linking domains are more useful than raw link volume."
                    },
                    {
                        "label": "Organic keywords",
                        "value": "64",
                        "tone": "caution",
                        "detail": "Search footprint helps distinguish real sites from thin shells."
                    },
                    {
                        "label": "Indexed pages",
                        "value": "3",
                        "tone": "unknown",
                        "detail": "Larger index coverage usually means more evidence to classify from."
                    },
                    {
                        "label": "Brand strength",
                        "value": "43/100",
                        "tone": "caution",
                        "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 · 290 ms",
                        "tone": "good",
                        "detail": "Slow or broken technical signals weaken confidence."
                    },
                    {
                        "label": "Content words",
                        "value": "94",
                        "tone": "spam",
                        "detail": "Thin pages are harder to trust and easier to manipulate."
                    },
                    {
                        "label": "Schema / structure",
                        "value": "0 schema · no meta · H1",
                        "tone": "caution",
                        "detail": "Structured markup and basic on-page hygiene improve quality confidence."
                    },
                    {
                        "label": "Links on page",
                        "value": "4 internal · 5 external",
                        "tone": "caution",
                        "detail": "Link patterns help detect thin directories and promo pages."
                    },
                    {
                        "label": "Page speed / mobile",
                        "value": "97/100 · 65/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": "Structured third-party evidence is still too thin, mixed, or unqualified to force a harder verdict."
                    },
                    {
                        "label": "Evidence quality",
                        "value": "Low",
                        "tone": "unknown",
                        "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": "Clear",
                        "tone": "good",
                        "detail": "Prevents thin or mixed external evidence from forcing a stronger tag than the evidence can justify."
                    }
                ]
            }
        ],
        "positives": [
            "Established domain age: 16.7 years.",
            "Low registrar / ownership churn with solid registry stability.",
            "Healthy crawl quality and on-page completeness."
        ],
        "risks": [
            "The crawled page looks unusually thin."
        ]
    },
    "traffic_confidence": 40,
    "whois": {
        "current": {
            "id": 52586,
            "domain": "iain.in",
            "source_type": "rdap",
            "rdap_url": "https://rdap.nixiregistry.in/rdap/domain/iain.in",
            "registrar_name": "NAMECHEAP",
            "registrar_handle": "1068",
            "registrant_name": "",
            "registrant_org": "inpublic.space llc",
            "registrant_country": "",
            "registrant_email": "",
            "abuse_email": "abuse@namecheap.com",
            "created_date": "2009-08-05 04:13:30",
            "updated_date": "2025-07-11 07:26:06",
            "expires_date": "2026-08-05 04:13:30",
            "nameservers_json": "[\"elsa.ns.cloudflare.com\",\"sid.ns.cloudflare.com\"]",
            "status_json": "[\"client transfer prohibited\"]",
            "dnssec": "unsigned",
            "privacy_protected": 0,
            "content_hash": "75a2f6f08c3ef5a8bad7c82b05d1523876caba4477d2213e190e22487c414147",
            "history_count": 1,
            "last_checked_at": "2026-03-20 23:22:51",
            "last_changed_at": "2026-03-20 23:22:51",
            "created_at": "2026-03-20 23:22:51",
            "updated_at": "2026-03-20 23:22:51"
        },
        "history": [
            {
                "id": 53669,
                "domain": "iain.in",
                "source_type": "rdap",
                "registrar_name": "NAMECHEAP",
                "registrar_handle": "1068",
                "registrant_name": "",
                "registrant_org": "inpublic.space llc",
                "registrant_country": "",
                "registrant_email": "",
                "abuse_email": "abuse@namecheap.com",
                "created_date": "2009-08-05 04:13:30",
                "updated_date": "2025-07-11 07:26:06",
                "expires_date": "2026-08-05 04:13:30",
                "nameservers_json": "[\"elsa.ns.cloudflare.com\",\"sid.ns.cloudflare.com\"]",
                "status_json": "[\"client transfer prohibited\"]",
                "dnssec": "unsigned",
                "privacy_protected": 0,
                "content_hash": "75a2f6f08c3ef5a8bad7c82b05d1523876caba4477d2213e190e22487c414147",
                "checked_at": "2026-03-20 23:22:51",
                "change_summary": "Initial WHOIS snapshot captured.",
                "created_at": "2026-03-20 23:22:51"
            }
        ],
        "signals": {
            "age_years": 16.7,
            "days_to_expiry": 108,
            "days_since_last_registry_update": 281,
            "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": 1
        }
    },
    "discovered_domain": {
        "id": 101296,
        "domain": "iain.in",
        "first_seen_at": "2026-03-15 22:03:53",
        "last_crawled_at": "2026-03-20 23:22:56",
        "last_title": "iain nash",
        "last_http_status": 200,
        "discovered_from_domain": "1mb.club",
        "depth": 0,
        "backlinks_count": 1,
        "rating_cache": 51,
        "spam_score": 4,
        "risk_label": "good",
        "category_name": "Business: Corporate & Professional Services",
        "primary_country_code": "IN",
        "internal_links_count": 4,
        "external_links_count": 5,
        "social_profiles_count": 4,
        "content_word_count": 94,
        "title_quality_score": 65,
        "has_meta_description": 0,
        "has_h1": 1,
        "language_code": "en",
        "response_time_ms": 290,
        "robots_status": 404,
        "sitemap_status": 404,
        "sitemap_total_urls": 0,
        "quality_score": 60,
        "site_name": "",
        "canonical_domain": "",
        "favicon_present": 0,
        "schema_org_count": 0,
        "noindex_detected": 0,
        "feed_links_count": 0,
        "https_working": 1,
        "estimated_authority_score": 13,
        "trust_score": 64,
        "nsfw_score": 0,
        "overall_rank_estimate": 31848,
        "primary_tag": "Uncertain",
        "tag_codes": "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": 99,
        "fraud_score": 2,
        "legitimacy_score": 18,
        "infrastructure_risk_score": 10,
        "score_confidence": 84,
        "tag_confidence": 61,
        "category_confidence": 32,
        "deep_crawl_pages": 9,
        "resolved_ip": "66.175.208.158",
        "category_candidates_json": "[{\"category\":\"Business: Corporate & Professional Services\",\"score\":22}]",
        "page_signals_json": "[{\"path\":\"/career\",\"status\":200,\"title\":\"iain nash\",\"word_count\":140,\"summary_text\":\"iain nash iain nash window.dataLayer = window.dataLayer || []; function gtag(){ dataLayer.push(arguments); } gtag('js', new Date()); gtag('config', 'UA-143382713-3'); iain nash about career interactive teaching career 2010 Spire optimized mobile web application with zepto, implemented SQL-based user analytics dashboard details 2013 Tumblr refactored logged out tag page and login page details 2014 Google added metrics collection to Google Social's http2/spdy networking library and prototyped a social android camera application details 2015 GoCardless built an localized and international isomorphic React marketing site, built a AJAX testing stub library and built a PHP API template 2015 Airbnb worked across multiple teams for full-stack implementation of reviews search and frontend refactors for code\",\"classification_terms\":[\"career\",\"about\",\"login\",\"api\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":0,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[\"googletagmanager.com\",\"unpkg.com\"],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":1,\"depth\":1},{\"path\":\"/interactive\",\"status\":200,\"title\":\"iain nash\",\"word_count\":890,\"summary_text\":\"iain nash iain nash window.dataLayer = window.dataLayer || []; function gtag(){ dataLayer.push(arguments); } gtag('js', new Date()); gtag('config', 'UA-143382713-3'); iain nash about career interactive teaching iain’s interest in interactive media started when he worked as a researcher with the mobile and Environmental media lab on intelligent meeting room and lighting design. He worked with behanz fahari on living, breathing walls and various pieces as a technical consultant. iain has used various embedded development platforms such as arduinos, esp-32 chips, raspberry pi, and addressable led chipsets of all kinds to create interactive, modular IoT solutions for home and installations at usc, iain integrated his interest in film photography process and the digital screen and backlight by creating p\",\"classification_terms\":[\"interactive\",\"about\",\"address\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":0,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[\"googletagmanager.com\",\"unpkg.com\"],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":1,\"depth\":1},{\"path\":\"/teaching\",\"status\":200,\"title\":\"iain nash\",\"word_count\":403,\"summary_text\":\"iain nash iain nash window.dataLayer = window.dataLayer || []; function gtag(){ dataLayer.push(arguments); } gtag('js', new Date()); gtag('config', 'UA-143382713-3'); iain nash about career interactive teaching teaching 2011 Introduction to Robotics and Programming Arduino, VEX robotics, C code, quizzes a year-long introduction to robotics and programming to a homeschooled class of four. biweekly quizzes on programming and robotics were given. topics from the physics around electricity and energy consumption to building a simple motor controller with C and Arduino code was given. 2012 Course Producer for USC CS101 C, C++, Grading Worked as a Course Producer for the University of Southern California Computer Science 101 class. Prototyped a final project plan for the students involving small robots wi\",\"classification_terms\":[\"teaching\",\"about\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":0,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[\"googletagmanager.com\",\"unpkg.com\"],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":1,\"depth\":1},{\"path\":\"/interactive/01-cube-cubed.html\",\"status\":200,\"title\":\"iain nash\",\"word_count\":84,\"summary_text\":\"iain nash iain nash window.dataLayer = window.dataLayer || []; function gtag(){ dataLayer.push(arguments); } gtag('js', new Date()); gtag('config', 'UA-143382713-3'); iain nash about career interactive teaching 2015 cube cubed in collaboration with alex zhang dmx, python, audio analysis, fabrication, led power and control built a series of three cubes sized 16' 5' and 2' respectively, illuminated with computer-controlled LED and incandescent lights interactively with the concert nearby cube3 This installation used rope lights, led lights, and a web controller to dynamically illuminate a cube alongside a concert. feather.replace();\",\"classification_terms\":[\"interactive/01-cube-cubed.html\",\"about\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":0,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[\"googletagmanager.com\",\"unpkg.com\"],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":1,\"depth\":2},{\"path\":\"/interactive/06-pulse.html\",\"status\":200,\"title\":\"iain nash\",\"word_count\":401,\"summary_text\":\"iain nash iain nash window.dataLayer = window.dataLayer || []; function gtag(){ dataLayer.push(arguments); } gtag('js', new Date()); gtag('config', 'UA-143382713-3'); iain nash about career interactive teaching 2018 pulse in collaboration with lenny zhu midi, dmx, ir heart rate, arduino, synthesis pulse is an immersive installation that mediates in-person connection and intimacy through a guided biofeedback experience with immersive spaces, lighting and synthesizing a partner’s heartbeat in a comfortable, small space creates an immersive personal meditation environment “A Raw Bioimmersive Experience” Concept: To this day, sharing the human experience fully with another individual has not been possible. But can we get closer? We created Pulse as an experiment in engineering human connection by immers\",\"classification_terms\":[\"interactive/06-pulse.html\",\"about\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":0,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[\"googletagmanager.com\",\"unpkg.com\"],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":1,\"depth\":2},{\"path\":\"/interactive/09-date-me.html\",\"status\":200,\"title\":\"iain nash\",\"word_count\":190,\"summary_text\":\"iain nash iain nash window.dataLayer = window.dataLayer || []; function gtag(){ dataLayer.push(arguments); } gtag('js', new Date()); gtag('config', 'UA-143382713-3'); iain nash about career interactive teaching 2019 #dateme off broadway in collaboration with sam hines websockets, expo, react native built an mobile application with a team for #dateme off broadway working with a consultant to the show (+ designer and backend engineer). the application allows participants to create live dating profiles that are featured throughout the show (including a swiping interface, scripted bots that message participants with notifications throughout the show) and incorporating profiles made in the app as a part of the show #DateMe was a companion app to the #dateme off broadway show. I built the mobile applicati\",\"classification_terms\":[\"interactive/09-date-me.html\",\"about\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":0,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[\"googletagmanager.com\",\"unpkg.com\"],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":1,\"depth\":2},{\"path\":\"/interactive/10-spatial-audio-archologies.html\",\"status\":200,\"title\":\"iain nash\",\"word_count\":329,\"summary_text\":\"iain nash iain nash window.dataLayer = window.dataLayer || []; function gtag(){ dataLayer.push(arguments); } gtag('js', new Date()); gtag('config', 'UA-143382713-3'); iain nash about career interactive teaching 2019 spatial audio archologies performance in collaboration with chengcheng zhao lidar, web audio, performance we created a piece virtually triggering audio in an empty space that told past histories of the space only through sound. we mapped the same spaces to the different sounds in our lives and premiered a performance going through the space that triggered our own sounds leading to a symphony of all the sounds together as the piece came to a close. participants were invited to explore the soundscape themselves afterwards. Github repo The performance consisted of a 20 minute segment, the f\",\"classification_terms\":[\"interactive/10-spatial-audio-archologies.html\",\"about\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":0,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[\"googletagmanager.com\",\"unpkg.com\"],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":1,\"depth\":2},{\"path\":\"/interactive/11-sfpc-final-show.html\",\"status\":200,\"title\":\"iain nash\",\"word_count\":116,\"summary_text\":\"iain nash iain nash window.dataLayer = window.dataLayer || []; function gtag(){ dataLayer.push(arguments); } gtag('js', new Date()); gtag('config', 'UA-143382713-3'); iain nash about career interactive teaching 2019 data shift: sensations 4 ch audio interface, 3.5mm headphone connectors, receipt printer, LED matrix displays, LCD display, bass acuator and amplifier this piece is a reflection on how data exists and is transferred in systems and devices. experience binary data through tactile, audio, and visual interactions. load the interface on your device, disconnect from all networks, connect to our network through sound and compose a message to experience it in different ways. see your message make physical change and the space your virtual interactions take up in the world. Installation Video: Ph\",\"classification_terms\":[\"interactive/11-sfpc-final-show.html\",\"about\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":0,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[\"googletagmanager.com\",\"unpkg.com\"],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":1,\"depth\":2},{\"path\":\"/interactive/12-custom-handwash.html\",\"status\":200,\"title\":\"iain nash\",\"word_count\":132,\"summary_text\":\"iain nash iain nash window.dataLayer = window.dataLayer || []; function gtag(){ dataLayer.push(arguments); } gtag('js', new Date()); gtag('config', 'UA-143382713-3'); iain nash about career interactive teaching 2020 handwash custom hardware atmega, pcb design, circuit design, firmware people have a hard time estimating 20 seconds, this device is a simple animated starfish with lights and a tune that animates for 20 seconds to wash your hands when you wave in front of it within 5-6 inches. it is battery powered and can mount next to your sink on the mirror or the wall (with simple removable adhesive). the pcb and circuit are custom built to be power efficient and safe. this is a work in progress project ~ firmware code and designs will be published upon completion of the first round of prototypes. De\",\"classification_terms\":[\"interactive/12-custom-handwash.html\",\"about\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":0,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[\"googletagmanager.com\",\"unpkg.com\"],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":1,\"depth\":2}]",
        "score_reasons_json": "[]",
        "route_domain": "iain.in",
        "display_domain": "iain.in"
    },
    "explainability": {
        "summary": "iain.in currently scores 61/100. The score is being shaped by a mixed signal profile rather than one dominant factor. Evidence confidence is strong enough for a relatively stable read. 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": "High confidence",
                "tone": "good",
                "detail": "84/100"
            },
            {
                "label": "Traffic confidence",
                "value": "Moderate confidence",
                "tone": "caution",
                "detail": "40/100"
            },
            {
                "label": "Crawler access",
                "value": "Clean visibility",
                "tone": "good",
                "detail": null
            }
        ],
        "weighted_contributions": [
            {
                "label": "Quality system",
                "points": "+15.0",
                "tone": "caution",
                "detail": "Technical quality, crawl depth, page structure, and implementation hygiene. Current subsystem score: 44/100."
            },
            {
                "label": "Reputation system",
                "points": "+14.6",
                "tone": "caution",
                "detail": "Authority, search visibility, reach, engagement, and registry stability. Current subsystem score: 43/100."
            },
            {
                "label": "Safety system",
                "points": "+31.7",
                "tone": "good",
                "detail": "Fraud, spam, and trust signals from infrastructure, crawl, and registry evidence. Current subsystem score: 99/100."
            }
        ],
        "evidence_cards": [
            {
                "label": "Authority and trust",
                "value": "37/100 · trust 46/100",
                "tone": "risk",
                "detail": "67 monthly visitors, 64 organic keywords, brand completeness 43/100, engagement 75/100."
            },
            {
                "label": "Backlink and search evidence",
                "value": "1 referring domains",
                "tone": "good",
                "detail": "1 backlinks across 1 referring domains. Diversity 92/100; spam penalty 3."
            },
            {
                "label": "Registry and domain stability",
                "value": "16.7 years old",
                "tone": "good",
                "detail": "Stability 100/100 · age 16.7 years · registrar NAMECHEAP · expires in 108 days."
            },
            {
                "label": "Safety and fraud posture",
                "value": "Safety 99/100 · fraud 2/100",
                "tone": "good",
                "detail": "Primary tag Uncertain · safety 99/100 · fraud 2/100."
            }
        ],
        "positives": [
            "Established domain age: 16.7 years.",
            "Low registrar / ownership churn with solid registry stability.",
            "Healthy crawl quality and on-page completeness.",
            "Registry history looks stable, which supports legitimacy and trust.",
            "The domain has been registered for years, which usually improves trust confidence.",
            "HTTPS is working, so the site clears a basic transport-security check."
        ],
        "risks": [
            "The crawled page looks unusually thin.",
            "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-20 23:22:56",
                "tone": "risk",
                "detail": "Crawl and page content sample. Age: 29d ago."
            },
            {
                "label": "WHOIS snapshot",
                "value": "2026-03-20 23:22:51",
                "tone": "risk",
                "detail": "Registry profile and stability signals. Age: 29d ago."
            },
            {
                "label": "Keyword view",
                "value": "2026-04-19 00:09:41",
                "tone": "good",
                "detail": "Estimated visibility until tracked keyword snapshots exist. Age: 0s ago."
            },
            {
                "label": "Rank history",
                "value": "2026-04-19 00:09:41",
                "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": 61,
        "fraud_clamp_penalty": 0,
        "final_score": 61
    },
    "insight_snapshot": {
        "version": 1,
        "generated_at": "2026-04-19T00:09:41+00:00",
        "domain": "iain.in",
        "display_name": "iain nash",
        "is_tracked": false,
        "is_estimated": true,
        "overall_score": 61,
        "authority_score": 37,
        "trust_score": 46,
        "safety_score": 99,
        "fraud_score": 2,
        "confidence_score": 84,
        "traffic_confidence": 40,
        "last_crawled_at": "2026-03-20 23:22:56",
        "crawl_blocked": false,
        "summary": "iain.in currently scores 61/100. The score is being shaped by a mixed signal profile rather than one dominant factor. Evidence confidence is strong enough for a relatively stable read. 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": "High confidence",
                "tone": "good",
                "detail": "84/100"
            },
            {
                "label": "Traffic confidence",
                "value": "Moderate confidence",
                "tone": "caution",
                "detail": "40/100"
            },
            {
                "label": "Crawler access",
                "value": "Clean visibility",
                "tone": "good",
                "detail": null
            }
        ],
        "top_positive_signals": [
            "Established domain age: 16.7 years.",
            "Low registrar / ownership churn with solid registry stability.",
            "Healthy crawl quality and on-page completeness.",
            "Registry history looks stable, which supports legitimacy and trust.",
            "The domain has been registered for years, which usually improves trust confidence."
        ],
        "top_risk_signals": [
            "The crawled page looks unusually thin.",
            "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-20 23:22:56",
                "tone": "risk",
                "detail": "Crawl and page content sample. Age: 29d ago."
            },
            {
                "label": "WHOIS snapshot",
                "value": "2026-03-20 23:22:51",
                "tone": "risk",
                "detail": "Registry profile and stability signals. Age: 29d ago."
            },
            {
                "label": "Keyword view",
                "value": "2026-04-19 00:09:41",
                "tone": "good",
                "detail": "Estimated visibility until tracked keyword snapshots exist. Age: 0s ago."
            },
            {
                "label": "Rank history",
                "value": "2026-04-19 00:09:41",
                "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": "Uncertain",
                "label": "Uncertain",
                "tone": "unknown"
            },
            {
                "code": "T",
                "label": "Trusted",
                "tone": "good"
            }
        ]
    },
    "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-19T10:42:51+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/iain.in/refresh",
        "isGuestCooldown": false,
        "cooldownSeconds": 0
    },
    "urlscan_report": {
        "domain": "iain.in",
        "status": "idle",
        "submitted_at": null,
        "completed_at": null,
        "last_checked_at": null,
        "last_error": "",
        "submitted_url": "https://iain.in/",
        "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
    }
}