{
  "netuid": 108,
  "slug": "talkhead",
  "name": "TalkHead",
  "symbol": "\u0536",
  "description": "Talking Head Generation",
  "priceTao": 0.004248469,
  "priceUsd": 1.0750797780526598,
  "athUsd": 1.0750797780526598,
  "change24h": 4.174233258807611,
  "change7d": 4.268012838667971,
  "change30d": -16.477628383776743,
  "change90d": 0.51,
  "marketCapUsd": 1019497.6427880528,
  "volume24hUsd": 73445.7703540563,
  "rootProp": 0.41567488551346937,
  "liquidityUsd": 907521.0838709885,
  "alphaStaked": 526208.866929722,
  "activeMiners": 1,
  "activeValidators": 12,
  "emissionPct": 0.024821156528088095,
  "emissionPerDayTao": 1.0,
  "registrationCost": 165.584441837,
  "pruningRank": 114,
  "immunityRemaining": 4797,
  "sentiment": "Greed",
  "githubRepo": "https://github.com/talkheadai/talkhead-subnet",
  "subnetUrl": "",
  "scorecard": {
    "adoption": {
      "label": "weak",
      "score": 12,
      "reasons": [
        {
          "tone": "neutral",
          "label": "Stars",
          "value": "0",
          "weight": null
        },
        {
          "tone": "neutral",
          "label": "Contributors",
          "value": "3",
          "weight": null
        },
        {
          "tone": "neutral",
          "label": "24h volume",
          "value": "$73,446",
          "weight": null
        },
        {
          "tone": "neutral",
          "label": "Validators",
          "value": "12",
          "weight": null
        },
        {
          "tone": "neutral",
          "label": "Bus factor",
          "value": "Top contributor: 76%",
          "weight": null
        },
        {
          "tone": "neutral",
          "label": "LLM blend",
          "value": "heuristic=7 \u00d7 0.6 + llm=20 \u00d7 0.4",
          "weight": null
        }
      ]
    },
    "shipSpeed": {
      "label": "mixed",
      "score": 54,
      "reasons": [
        {
          "tone": "positive",
          "label": "Commits 30d",
          "value": "28",
          "weight": null
        },
        {
          "tone": "neutral",
          "label": "Merged PRs 30d",
          "value": "2",
          "weight": null
        },
        {
          "tone": "neutral",
          "label": "Releases 12m",
          "value": "0",
          "weight": null
        },
        {
          "tone": "positive",
          "label": "Latest push",
          "value": "2026-04-22T04:52:28Z",
          "weight": null
        },
        {
          "tone": "positive",
          "label": "Momentum",
          "value": "accelerating (28/30d vs 10/mo avg)",
          "weight": null
        },
        {
          "tone": "neutral",
          "label": "LLM blend",
          "value": "heuristic=55 \u00d7 0.6 + llm=52 \u00d7 0.4",
          "weight": null
        }
      ]
    },
    "updatedAt": "2026-04-29T20:41:08.737223+00:00",
    "confidence": 0.82,
    "usefulness": {
      "label": "watch",
      "score": 42,
      "reasons": [
        {
          "tone": "neutral",
          "label": "Durable keywords",
          "value": "1 matched",
          "weight": null
        },
        {
          "tone": "positive",
          "label": "Commodity risk",
          "value": "0 matched",
          "weight": null
        },
        {
          "tone": "neutral",
          "label": "Subnet traction",
          "value": "0/30",
          "weight": null
        },
        {
          "tone": "neutral",
          "label": "LLM blend",
          "value": "heuristic=40 \u00d7 0.6 + llm=45 \u00d7 0.4",
          "weight": null
        }
      ]
    },
    "codeQuality": {
      "label": "weak",
      "score": 21,
      "reasons": [
        {
          "tone": "negative",
          "label": "CI",
          "value": "Missing",
          "weight": null
        },
        {
          "tone": "negative",
          "label": "Tests",
          "value": "Missing",
          "weight": null
        },
        {
          "tone": "positive",
          "label": "Docs",
          "value": "Structured (600 chars)",
          "weight": null
        },
        {
          "tone": "negative",
          "label": "Dep mgmt",
          "value": "None",
          "weight": null
        },
        {
          "tone": "positive",
          "label": "PR reviews",
          "value": "0.9 avg, 20% self-merge",
          "weight": null
        },
        {
          "tone": "neutral",
          "label": "Commit quality",
          "value": "30% conventional",
          "weight": null
        },
        {
          "tone": "neutral",
          "label": "Security hygiene",
          "value": "No SECURITY.md",
          "weight": null
        },
        {
          "tone": "neutral",
          "label": "LLM blend",
          "value": "heuristic=19 \u00d7 0.6 + llm=24 \u00d7 0.4",
          "weight": null
        }
      ]
    }
  },
  "marketScore": 11.0,
  "githubScore": 30.0,
  "aiScore": 37.0,
  "masterScore": 21.0,
  "masterRating": "D",
  "lastUpdatedAt": "2026-04-29T20:21:48Z",
  "isStale": false,
  "masterScorePrev": 19.0,
  "purpose": {
    "title": "TalkHead",
    "source": "llm",
    "confidence": 0.72,
    "shortSummary": "TalkHead (netuid 108) is an early-stage Bittensor subnet for decentralized photorealistic talking-head video generation, where miners submit Dockerized models evaluated by validators in GPU executors. With only 1 active miner, 0 GitHub stars, and no CI/tests/license in the repo, the network is functionally near-empty despite 12 active validators. A burst of 28 commits in the last 30 days (out of 29 total in 90 days) signals a recent development push, but the subnet has not yet demonstrated real adoption or production readiness."
  },
  "analysis": {
    "risks": [
      "Only 1 active miner is registered \u2014 the subnet cannot generate meaningful output or demonstrate real throughput at this level, making the validator network effectively idle",
      "Zero CI, zero tests, zero lint config, and no license present in the repo; commit message quality is rated 0.3/1.0 and no releases have shipped in 12 months, indicating a pre-production codebase with no quality safeguards"
    ],
    "score": 37,
    "summary": "TalkHead (netuid 108) is an early-stage Bittensor subnet for decentralized photorealistic talking-head video generation, where miners submit Dockerized models evaluated by validators in GPU executors. With only 1 active miner, 0 GitHub stars, and no CI/tests/license in the repo, the network is functionally near-empty despite 12 active validators. A burst of 28 commits in the last 30 days (out of 29 total in 90 days) signals a recent development push, but the subnet has not yet demonstrated real adoption or production readiness.",
    "provider": "cascade:sonnet",
    "expiresAt": "2026-05-29T20:38:34.089462+00:00",
    "strengths": [
      "Strong recent commit acceleration: 28 of the 29 total 90-day commits landed in the last 30 days, indicating active development momentum",
      "12 active validators are live, providing meaningful network coverage and weight-setting activity despite the subnet's early stage",
      "Low self-merge ratio (0.20) and 0.9 average reviews per PR suggest a collaborative, reviewed development process across 3 contributors"
    ],
    "updatedAt": "2026-04-29T20:38:34.089462+00:00",
    "durability": "weak",
    "recommendation": "Hold \u2014 wait for miner count to reach double digits and for the repo to add at minimum a CI pipeline and license before treating this as a viable subnet investment.",
    "dimensionScores": {
      "adoption": 20,
      "shipSpeed": 52,
      "usefulness": 45,
      "codeQuality": 24
    }
  },
  "repoCoverageStatus": "covered",
  "repos": [
    {
      "netuid": 108,
      "repoKind": "primary",
      "provider": "github",
      "owner": "talkheadai",
      "name": "talkhead-subnet",
      "url": "https://github.com/talkheadai/talkhead-subnet",
      "source": "registry",
      "isArchived": false,
      "isFork": false
    }
  ],
  "repoSnapshots": [
    {
      "fullName": "talkheadai/talkhead-subnet",
      "description": "Decentralized photorealistic talking head subnet on bittensor ecosystem",
      "homepageUrl": "",
      "defaultBranch": "main",
      "stars": 0,
      "forks": 1,
      "watchers": 0,
      "contributors": 3,
      "commits30d": 28,
      "commits90d": 29,
      "mergedPrs30d": 2,
      "mergedPrs90d": 9,
      "releases12m": 0,
      "openIssues": 0,
      "closedIssues30d": 0,
      "languages": [
        {
          "name": "Python",
          "percentage": 100.0
        }
      ],
      "topics": [],
      "rootSignals": {
        "hasCi": false,
        "hasTests": false,
        "hasLintConfig": false,
        "hasFormatterConfig": false,
        "hasTypeScript": false,
        "hasLicense": false,
        "hasSecurityPolicy": false,
        "hasDocs": true,
        "hasDocker": false,
        "hasDependabot": false,
        "hasRenovate": false,
        "rootEntries": [
          ".env.example",
          ".gitignore",
          "README.md",
          "config.py",
          "neurons",
          "pyproject.toml",
          "utils"
        ]
      },
      "readmeExcerpt": "TalkHead Subnet --- - Overview overview - How it works how-it-works - How to Run how-to-run - Executor & Scoring executor-and-scoring --- Overview TalkHead is a subnet where miners submit Dockerized talking-head models, and validators evaluate them in a secure GPU executor to rank performance and set weights. - Miners submit Docker image digests that identify model runtime containers. - Model evaluation is performed externally by an executor service. - Validators coordinate submission updates, scoring intake, and on-chain weight setting. How it works End-to-end pipeline: 1. Miner -> Subnet API",
      "pushedAt": "2026-04-22T04:52:28Z",
      "isArchived": false,
      "isFork": false,
      "commitMessageQuality": 0.3,
      "selfMergeRatio": 0.2,
      "avgReviewsPerPr": 0.9,
      "hasBranchProtection": false,
      "topContributorPct": 0.76,
      "avgCommentsPerIssue": 0.0,
      "avgResponseHours": 0.0,
      "prMergeHoursP50": 0.0,
      "prMergeHoursP95": 4.1,
      "contributorChurn30d": 0.0,
      "vulnerabilityCount": 0
    }
  ],
  "externalLinks": [
    {
      "label": "GitHub",
      "href": "https://github.com/talkheadai/talkhead-subnet"
    }
  ],
  "priceHistory": [
    {
      "timestamp": "2026-03-09T13:50:00-03:00",
      "value": 0.91687665
    },
    {
      "timestamp": "2026-03-09T19:24:36-03:00",
      "value": 0.94084224
    },
    {
      "timestamp": "2026-03-09T19:25:48-03:00",
      "value": 0.94084166
    },
    {
      "timestamp": "2026-03-09T19:42:12-03:00",
      "value": 0.94105741
    },
    {
      "timestamp": "2026-03-09T19:54:48-03:00",
      "value": 0.94098899
    },
    {
      "timestamp": "2026-03-10T22:04:12-03:00",
      "value": 0.98452346
    },
    {
      "timestamp": "2026-03-11T04:57:36.001000-03:00",
      "value": 1.05702871
    },
    {
      "timestamp": "2026-03-15T09:16:36-03:00",
      "value": 1.27718441
    },
    {
      "timestamp": "2026-03-16T15:03:36-03:00",
      "value": 1.48493964
    },
    {
      "timestamp": "2026-03-18T13:29:12-03:00",
      "value": 1.40379906
    },
    {
      "timestamp": "2026-03-18T19:54:00.001000-03:00",
      "value": 1.37670652
    },
    {
      "timestamp": "2026-03-19T10:05:36-03:00",
      "value": 1.23675704
    },
    {
      "timestamp": "2026-03-20T01:19:36-03:00",
      "value": 1.44744267
    },
    {
      "timestamp": "2026-03-21T15:01:36.001000-03:00",
      "value": 1.32518586
    },
    {
      "timestamp": "2026-03-21T16:30:36-03:00",
      "value": 1.32517439
    },
    {
      "timestamp": "2026-03-22T19:15:12.001000-03:00",
      "value": 1.31927112
    },
    {
      "timestamp": "2026-03-22T20:00:24-03:00",
      "value": 1.31906754
    },
    {
      "timestamp": "2026-03-22T20:11:48-03:00",
      "value": 1.31904533
    },
    {
      "timestamp": "2026-03-22T20:12:24-03:00",
      "value": 1.3190448
    },
    {
      "timestamp": "2026-03-23T18:36:36-03:00",
      "value": 1.43548648
    },
    {
      "timestamp": "2026-03-23T20:58:48.001000-03:00",
      "value": 1.45051495
    },
    {
      "timestamp": "2026-03-23T22:10:36-03:00",
      "value": 1.49474885
    },
    {
      "timestamp": "2026-03-24T18:03:36-03:00",
      "value": 1.65841744
    },
    {
      "timestamp": "2026-03-24T18:59:36.001000-03:00",
      "value": 1.63034627
    },
    {
      "timestamp": "2026-03-25T16:57:00-03:00",
      "value": 1.67054906
    },
    {
      "timestamp": "2026-03-26T18:45:00.001000-03:00",
      "value": 1.50699208
    },
    {
      "timestamp": "2026-03-27T17:39:36-03:00",
      "value": 1.57816983
    },
    {
      "timestamp": "2026-03-30T15:18:12-03:00",
      "value": 1.57463959
    },
    {
      "timestamp": "2026-03-31T20:00:24-03:00",
      "value": 1.48791049
    },
    {
      "timestamp": "2026-04-02T03:21:48.001000-03:00",
      "value": 1.30331447
    },
    {
      "timestamp": "2026-04-02T17:46:36-03:00",
      "value": 1.27705853
    },
    {
      "timestamp": "2026-04-03T11:49:48.001000-03:00",
      "value": 1.35048087
    },
    {
      "timestamp": "2026-04-06T19:08:00-03:00",
      "value": 1.31686189
    },
    {
      "timestamp": "2026-04-07T02:41:12-03:00",
      "value": 1.30302018
    },
    {
      "timestamp": "2026-04-07T19:13:00-03:00",
      "value": 1.41990855
    },
    {
      "timestamp": "2026-04-10T18:50:24-03:00",
      "value": 1.10434395
    },
    {
      "timestamp": "2026-04-14T18:45:36.001000-03:00",
      "value": 1.03415848
    },
    {
      "timestamp": "2026-04-16T06:16:12-03:00",
      "value": 1.07693392
    },
    {
      "timestamp": "2026-04-16T14:43:12-03:00",
      "value": 0.99762309
    },
    {
      "timestamp": "2026-04-17T04:46:24.001000-03:00",
      "value": 1.01508835
    },
    {
      "timestamp": "2026-04-19T05:53:36-03:00",
      "value": 1.02908835
    },
    {
      "timestamp": "2026-04-22T01:33:12-03:00",
      "value": 1.00848437
    },
    {
      "timestamp": "2026-04-22T09:11:24-03:00",
      "value": 1.00247457
    },
    {
      "timestamp": "2026-04-23T11:01:24-03:00",
      "value": 1.01481749
    },
    {
      "timestamp": "2026-04-24T13:20:00-03:00",
      "value": 0.99003854
    },
    {
      "timestamp": "2026-04-24T13:22:12.001000-03:00",
      "value": 0.99003978
    },
    {
      "timestamp": "2026-04-25T13:29:24-03:00",
      "value": 0.99776475
    },
    {
      "timestamp": "2026-04-26T17:26:48-03:00",
      "value": 1.02352324
    },
    {
      "timestamp": "2026-04-29T17:21:48-03:00",
      "value": 1.07507978
    }
  ],
  "liquidityHistory": [
    {
      "timestamp": "2026-03-09T13:50:00-03:00",
      "value": 440722.58750079
    },
    {
      "timestamp": "2026-03-09T19:24:36-03:00",
      "value": 447987.31512265
    },
    {
      "timestamp": "2026-03-09T19:25:48-03:00",
      "value": 447992.72690673
    },
    {
      "timestamp": "2026-03-09T19:42:12-03:00",
      "value": 448119.55888931
    },
    {
      "timestamp": "2026-03-09T19:54:48-03:00",
      "value": 448161.11396566
    },
    {
      "timestamp": "2026-03-10T22:04:12-03:00",
      "value": 473760.10800823
    },
    {
      "timestamp": "2026-03-11T04:57:36.001000-03:00",
      "value": 484854.60791206
    },
    {
      "timestamp": "2026-03-15T09:16:36-03:00",
      "value": 658280.3044427
    },
    {
      "timestamp": "2026-03-16T15:03:36-03:00",
      "value": 746644.10464447
    },
    {
      "timestamp": "2026-03-18T13:29:12-03:00",
      "value": 725908.59237904
    },
    {
      "timestamp": "2026-03-18T19:54:00.001000-03:00",
      "value": 721358.504963
    },
    {
      "timestamp": "2026-03-19T10:05:36-03:00",
      "value": 656943.12671109
    },
    {
      "timestamp": "2026-03-20T01:19:36-03:00",
      "value": 783849.76236498
    },
    {
      "timestamp": "2026-03-21T15:01:36.001000-03:00",
      "value": 735307.60472703
    },
    {
      "timestamp": "2026-03-21T16:30:36-03:00",
      "value": 735762.0738545
    },
    {
      "timestamp": "2026-03-22T19:15:12.001000-03:00",
      "value": 730268.32762955
    },
    {
      "timestamp": "2026-03-22T20:00:24-03:00",
      "value": 730441.59088981
    },
    {
      "timestamp": "2026-03-22T20:11:48-03:00",
      "value": 730493.3163517
    },
    {
      "timestamp": "2026-03-22T20:12:24-03:00",
      "value": 730496.21731262
    },
    {
      "timestamp": "2026-03-23T18:36:36-03:00",
      "value": 804685.81609649
    },
    {
      "timestamp": "2026-03-23T20:58:48.001000-03:00",
      "value": 814222.38542491
    },
    {
      "timestamp": "2026-03-23T22:10:36-03:00",
      "value": 837810.50305224
    },
    {
      "timestamp": "2026-03-24T18:03:36-03:00",
      "value": 933827.05750438
    },
    {
      "timestamp": "2026-03-24T18:59:36.001000-03:00",
      "value": 921583.9540009
    },
    {
      "timestamp": "2026-03-25T16:57:00-03:00",
      "value": 974321.15940719
    },
    {
      "timestamp": "2026-03-26T18:45:00.001000-03:00",
      "value": 914696.18057346
    },
    {
      "timestamp": "2026-03-27T17:39:36-03:00",
      "value": 918073.10906475
    },
    {
      "timestamp": "2026-03-30T15:18:12-03:00",
      "value": 922850.93621993
    },
    {
      "timestamp": "2026-03-31T20:00:24-03:00",
      "value": 907886.96268431
    },
    {
      "timestamp": "2026-04-02T03:21:48.001000-03:00",
      "value": 858914.03441846
    },
    {
      "timestamp": "2026-04-02T17:46:36-03:00",
      "value": 847268.67346302
    },
    {
      "timestamp": "2026-04-03T11:49:48.001000-03:00",
      "value": 891783.11676827
    },
    {
      "timestamp": "2026-04-06T19:08:00-03:00",
      "value": 909776.86321632
    },
    {
      "timestamp": "2026-04-07T02:41:12-03:00",
      "value": 901919.55394914
    },
    {
      "timestamp": "2026-04-07T19:13:00-03:00",
      "value": 969174.28234369
    },
    {
      "timestamp": "2026-04-10T18:50:24-03:00",
      "value": 790470.26661438
    },
    {
      "timestamp": "2026-04-14T18:45:36.001000-03:00",
      "value": 760628.12450241
    },
    {
      "timestamp": "2026-04-16T06:16:12-03:00",
      "value": 785070.38044527
    },
    {
      "timestamp": "2026-04-16T14:43:12-03:00",
      "value": 754006.878292
    },
    {
      "timestamp": "2026-04-17T04:46:24.001000-03:00",
      "value": 776753.19192435
    },
    {
      "timestamp": "2026-04-19T05:53:36-03:00",
      "value": 796707.48809712
    },
    {
      "timestamp": "2026-04-22T01:33:12-03:00",
      "value": 812207.59238753
    },
    {
      "timestamp": "2026-04-22T09:11:24-03:00",
      "value": 812726.49636772
    },
    {
      "timestamp": "2026-04-23T11:01:24-03:00",
      "value": 819933.15762558
    },
    {
      "timestamp": "2026-04-24T13:20:00-03:00",
      "value": 823426.28988445
    },
    {
      "timestamp": "2026-04-24T13:22:12.001000-03:00",
      "value": 823437.69390462
    },
    {
      "timestamp": "2026-04-25T13:29:24-03:00",
      "value": 836415.20387199
    },
    {
      "timestamp": "2026-04-26T17:26:48-03:00",
      "value": 860329.66677478
    },
    {
      "timestamp": "2026-04-29T17:21:48-03:00",
      "value": 907521.08387099
    }
  ],
  "scoreHistory": [
    {
      "date": "2026-03-09",
      "masterScore": 56.0,
      "marketScore": 90.0,
      "githubScore": 30.0,
      "aiScore": 48.0,
      "socialScore": 0.0,
      "rating": "watch",
      "usefulness": 61,
      "codeQuality": 32,
      "adoption": 51,
      "shipSpeed": 42
    },
    {
      "date": "2026-03-10",
      "masterScore": 56.0,
      "marketScore": 91.0,
      "githubScore": 30.0,
      "aiScore": 48.0,
      "socialScore": 0.0,
      "rating": "watch",
      "usefulness": 61,
      "codeQuality": 32,
      "adoption": 51,
      "shipSpeed": 42
    },
    {
      "date": "2026-03-15",
      "masterScore": 53.0,
      "marketScore": 84.0,
      "githubScore": 28.0,
      "aiScore": 48.0,
      "socialScore": 0.0,
      "rating": "watch",
      "usefulness": 55,
      "codeQuality": 33,
      "adoption": 41,
      "shipSpeed": 25
    },
    {
      "date": "2026-03-18",
      "masterScore": 42.0,
      "marketScore": 86.0,
      "githubScore": 28.0,
      "aiScore": 33.0,
      "socialScore": 0.0,
      "rating": "C",
      "usefulness": 55,
      "codeQuality": 33,
      "adoption": 41,
      "shipSpeed": 28
    },
    {
      "date": "2026-03-19",
      "masterScore": 46.0,
      "marketScore": 88.0,
      "githubScore": 28.0,
      "aiScore": 48.0,
      "socialScore": 0.0,
      "rating": "C",
      "usefulness": 55,
      "codeQuality": 33,
      "adoption": 41,
      "shipSpeed": 23
    },
    {
      "date": "2026-03-20",
      "masterScore": 45.0,
      "marketScore": 87.0,
      "githubScore": 27.0,
      "aiScore": 48.0,
      "socialScore": 0.0,
      "rating": "C",
      "usefulness": 55,
      "codeQuality": 33,
      "adoption": 41,
      "shipSpeed": 22
    },
    {
      "date": "2026-03-21",
      "masterScore": 39.0,
      "marketScore": 80.0,
      "githubScore": 27.0,
      "aiScore": 28.0,
      "socialScore": 0.0,
      "rating": "C",
      "usefulness": 50,
      "codeQuality": 34,
      "adoption": 39,
      "shipSpeed": 25
    },
    {
      "date": "2026-03-22",
      "masterScore": 51.0,
      "marketScore": 87.0,
      "githubScore": 27.0,
      "aiScore": 40.0,
      "socialScore": 0.0,
      "rating": "B",
      "usefulness": 61,
      "codeQuality": 32,
      "adoption": 43,
      "shipSpeed": 28
    },
    {
      "date": "2026-03-23",
      "masterScore": 41.0,
      "marketScore": 83.0,
      "githubScore": 27.0,
      "aiScore": 35.0,
      "socialScore": 0.0,
      "rating": "C",
      "usefulness": 56,
      "codeQuality": 34,
      "adoption": 42,
      "shipSpeed": 26
    },
    {
      "date": "2026-03-24",
      "masterScore": 22.0,
      "marketScore": 15.0,
      "githubScore": 23.0,
      "aiScore": 44.0,
      "socialScore": 0.0,
      "rating": "D",
      "usefulness": 42,
      "codeQuality": 36,
      "adoption": 20,
      "shipSpeed": 23
    },
    {
      "date": "2026-03-25",
      "masterScore": 19.0,
      "marketScore": 13.0,
      "githubScore": 23.0,
      "aiScore": 34.0,
      "socialScore": 0.0,
      "rating": "F",
      "usefulness": 37,
      "codeQuality": 34,
      "adoption": 16,
      "shipSpeed": 19
    },
    {
      "date": "2026-03-26",
      "masterScore": 16.0,
      "marketScore": 13.0,
      "githubScore": 23.0,
      "aiScore": 22.0,
      "socialScore": 0.0,
      "rating": "F",
      "usefulness": 33,
      "codeQuality": 28,
      "adoption": 11,
      "shipSpeed": 16
    },
    {
      "date": "2026-03-27",
      "masterScore": 22.0,
      "marketScore": 22.0,
      "githubScore": 23.0,
      "aiScore": 38.0,
      "socialScore": 0.0,
      "rating": "D",
      "usefulness": 38,
      "codeQuality": 36,
      "adoption": 16,
      "shipSpeed": 23
    },
    {
      "date": "2026-03-30",
      "masterScore": 23.0,
      "marketScore": 16.0,
      "githubScore": 23.0,
      "aiScore": 48.0,
      "socialScore": 0.0,
      "rating": "D",
      "usefulness": 37,
      "codeQuality": 33,
      "adoption": 6,
      "shipSpeed": 14
    },
    {
      "date": "2026-04-01",
      "masterScore": 19.0,
      "marketScore": 14.0,
      "githubScore": 23.0,
      "aiScore": 32.0,
      "socialScore": 0.0,
      "rating": "F",
      "usefulness": 36,
      "codeQuality": 34,
      "adoption": 14,
      "shipSpeed": 18
    },
    {
      "date": "2026-04-02",
      "masterScore": 15.0,
      "marketScore": 6.0,
      "githubScore": 23.0,
      "aiScore": 24.0,
      "socialScore": 0.0,
      "rating": "F",
      "usefulness": 32,
      "codeQuality": 32,
      "adoption": 11,
      "shipSpeed": 16
    },
    {
      "date": "2026-04-03",
      "masterScore": 19.0,
      "marketScore": 6.0,
      "githubScore": 22.0,
      "aiScore": 48.0,
      "socialScore": 0.0,
      "rating": "F",
      "usefulness": 37,
      "codeQuality": 33,
      "adoption": 6,
      "shipSpeed": 13
    },
    {
      "date": "2026-04-07",
      "masterScore": 18.0,
      "marketScore": 6.0,
      "githubScore": 22.0,
      "aiScore": 39.0,
      "socialScore": 0.0,
      "rating": "F",
      "usefulness": 40,
      "codeQuality": 36,
      "adoption": 15,
      "shipSpeed": 21
    },
    {
      "date": "2026-04-08",
      "masterScore": 15.0,
      "marketScore": 6.0,
      "githubScore": 22.0,
      "aiScore": 27.0,
      "socialScore": 0.0,
      "rating": "F",
      "usefulness": 33,
      "codeQuality": 32,
      "adoption": 12,
      "shipSpeed": 15
    },
    {
      "date": "2026-04-11",
      "masterScore": 16.0,
      "marketScore": 7.0,
      "githubScore": 21.0,
      "aiScore": 31.0,
      "socialScore": 0.0,
      "rating": "F",
      "usefulness": 35,
      "codeQuality": 34,
      "adoption": 15,
      "shipSpeed": 14
    },
    {
      "date": "2026-04-15",
      "masterScore": 16.0,
      "marketScore": 6.0,
      "githubScore": 21.0,
      "aiScore": 32.0,
      "socialScore": 0.0,
      "rating": "F",
      "usefulness": 33,
      "codeQuality": 37,
      "adoption": 15,
      "shipSpeed": 16
    },
    {
      "date": "2026-04-16",
      "masterScore": 15.0,
      "marketScore": 6.0,
      "githubScore": 21.0,
      "aiScore": 30.0,
      "socialScore": 0.0,
      "rating": "F",
      "usefulness": 35,
      "codeQuality": 34,
      "adoption": 12,
      "shipSpeed": 14
    },
    {
      "date": "2026-04-17",
      "masterScore": 16.0,
      "marketScore": 9.0,
      "githubScore": 21.0,
      "aiScore": 31.0,
      "socialScore": 0.0,
      "rating": "F",
      "usefulness": 36,
      "codeQuality": 36,
      "adoption": 11,
      "shipSpeed": 14
    },
    {
      "date": "2026-04-19",
      "masterScore": 15.0,
      "marketScore": 7.0,
      "githubScore": 21.0,
      "aiScore": 27.0,
      "socialScore": 0.0,
      "rating": "F",
      "usefulness": 32,
      "codeQuality": 36,
      "adoption": 11,
      "shipSpeed": 14
    },
    {
      "date": "2026-04-22",
      "masterScore": 19.0,
      "marketScore": 7.0,
      "githubScore": 29.0,
      "aiScore": 31.0,
      "socialScore": 0.0,
      "rating": "F",
      "usefulness": 41,
      "codeQuality": 21,
      "adoption": 11,
      "shipSpeed": 45
    },
    {
      "date": "2026-04-23",
      "masterScore": 18.0,
      "marketScore": 7.0,
      "githubScore": 30.0,
      "aiScore": 29.0,
      "socialScore": 0.0,
      "rating": "F",
      "usefulness": 41,
      "codeQuality": 19,
      "adoption": 10,
      "shipSpeed": 46
    },
    {
      "date": "2026-04-24",
      "masterScore": 19.0,
      "marketScore": 7.0,
      "githubScore": 30.0,
      "aiScore": 33.0,
      "socialScore": 0.0,
      "rating": "F",
      "usefulness": 42,
      "codeQuality": 20,
      "adoption": 11,
      "shipSpeed": 50
    },
    {
      "date": "2026-04-25",
      "masterScore": 19.0,
      "marketScore": 7.0,
      "githubScore": 30.0,
      "aiScore": 31.0,
      "socialScore": 0.0,
      "rating": "F",
      "usefulness": 41,
      "codeQuality": 20,
      "adoption": 11,
      "shipSpeed": 49
    },
    {
      "date": "2026-04-26",
      "masterScore": 19.0,
      "marketScore": 7.0,
      "githubScore": 30.0,
      "aiScore": 32.0,
      "socialScore": 0.0,
      "rating": "F",
      "usefulness": 41,
      "codeQuality": 21,
      "adoption": 11,
      "shipSpeed": 49
    },
    {
      "date": "2026-04-29",
      "masterScore": 21.0,
      "marketScore": 11.0,
      "githubScore": 30.0,
      "aiScore": 37.0,
      "socialScore": 0.0,
      "rating": "D",
      "usefulness": 42,
      "codeQuality": 21,
      "adoption": 12,
      "shipSpeed": 54
    }
  ],
  "githubHistory": [
    {
      "date": "2026-03-09",
      "stars": 0,
      "forks": 1,
      "watchers": 0,
      "contributors": 2,
      "commits30d": 2,
      "commits90d": 56,
      "mergedPrs30d": 1,
      "mergedPrs90d": 22,
      "releases12m": 0,
      "openIssues": 0,
      "closedIssues30d": 0
    },
    {
      "date": "2026-03-10",
      "stars": 0,
      "forks": 1,
      "watchers": 0,
      "contributors": 2,
      "commits30d": 2,
      "commits90d": 54,
      "mergedPrs30d": 1,
      "mergedPrs90d": 21,
      "releases12m": 0,
      "openIssues": 0,
      "closedIssues30d": 0
    },
    {
      "date": "2026-03-15",
      "stars": 0,
      "forks": 1,
      "watchers": 0,
      "contributors": 2,
      "commits30d": 2,
      "commits90d": 52,
      "mergedPrs30d": 1,
      "mergedPrs90d": 21,
      "releases12m": 0,
      "openIssues": 0,
      "closedIssues30d": 0
    },
    {
      "date": "2026-03-18",
      "stars": 0,
      "forks": 1,
      "watchers": 0,
      "contributors": 2,
      "commits30d": 2,
      "commits90d": 45,
      "mergedPrs30d": 1,
      "mergedPrs90d": 19,
      "releases12m": 0,
      "openIssues": 0,
      "closedIssues30d": 0
    },
    {
      "date": "2026-03-20",
      "stars": 0,
      "forks": 1,
      "watchers": 0,
      "contributors": 2,
      "commits30d": 2,
      "commits90d": 41,
      "mergedPrs30d": 1,
      "mergedPrs90d": 18,
      "releases12m": 0,
      "openIssues": 0,
      "closedIssues30d": 0
    },
    {
      "date": "2026-03-21",
      "stars": 0,
      "forks": 1,
      "watchers": 0,
      "contributors": 2,
      "commits30d": 2,
      "commits90d": 41,
      "mergedPrs30d": 1,
      "mergedPrs90d": 17,
      "releases12m": 0,
      "openIssues": 0,
      "closedIssues30d": 0
    },
    {
      "date": "2026-03-22",
      "stars": 0,
      "forks": 1,
      "watchers": 0,
      "contributors": 2,
      "commits30d": 2,
      "commits90d": 39,
      "mergedPrs30d": 1,
      "mergedPrs90d": 17,
      "releases12m": 0,
      "openIssues": 0,
      "closedIssues30d": 0
    },
    {
      "date": "2026-03-23",
      "stars": 0,
      "forks": 1,
      "watchers": 0,
      "contributors": 2,
      "commits30d": 0,
      "commits90d": 36,
      "mergedPrs30d": 0,
      "mergedPrs90d": 16,
      "releases12m": 0,
      "openIssues": 0,
      "closedIssues30d": 0
    },
    {
      "date": "2026-03-25",
      "stars": 0,
      "forks": 1,
      "watchers": 0,
      "contributors": 2,
      "commits30d": 0,
      "commits90d": 36,
      "mergedPrs30d": 0,
      "mergedPrs90d": 16,
      "releases12m": 0,
      "openIssues": 0,
      "closedIssues30d": 0
    },
    {
      "date": "2026-03-26",
      "stars": 0,
      "forks": 1,
      "watchers": 0,
      "contributors": 2,
      "commits30d": 0,
      "commits90d": 36,
      "mergedPrs30d": 0,
      "mergedPrs90d": 16,
      "releases12m": 0,
      "openIssues": 0,
      "closedIssues30d": 0
    },
    {
      "date": "2026-03-30",
      "stars": 0,
      "forks": 1,
      "watchers": 0,
      "contributors": 2,
      "commits30d": 0,
      "commits90d": 31,
      "mergedPrs30d": 0,
      "mergedPrs90d": 15,
      "releases12m": 0,
      "openIssues": 0,
      "closedIssues30d": 0
    },
    {
      "date": "2026-03-31",
      "stars": 0,
      "forks": 1,
      "watchers": 0,
      "contributors": 2,
      "commits30d": 0,
      "commits90d": 31,
      "mergedPrs30d": 0,
      "mergedPrs90d": 15,
      "releases12m": 0,
      "openIssues": 0,
      "closedIssues30d": 0
    },
    {
      "date": "2026-04-02",
      "stars": 0,
      "forks": 1,
      "watchers": 0,
      "contributors": 2,
      "commits30d": 0,
      "commits90d": 31,
      "mergedPrs30d": 0,
      "mergedPrs90d": 15,
      "releases12m": 0,
      "openIssues": 0,
      "closedIssues30d": 0
    },
    {
      "date": "2026-04-03",
      "stars": 0,
      "forks": 1,
      "watchers": 0,
      "contributors": 2,
      "commits30d": 0,
      "commits90d": 29,
      "mergedPrs30d": 0,
      "mergedPrs90d": 15,
      "releases12m": 0,
      "openIssues": 0,
      "closedIssues30d": 0
    },
    {
      "date": "2026-04-06",
      "stars": 0,
      "forks": 1,
      "watchers": 0,
      "contributors": 2,
      "commits30d": 0,
      "commits90d": 27,
      "mergedPrs30d": 0,
      "mergedPrs90d": 13,
      "releases12m": 0,
      "openIssues": 0,
      "closedIssues30d": 0
    },
    {
      "date": "2026-04-07",
      "stars": 0,
      "forks": 1,
      "watchers": 0,
      "contributors": 2,
      "commits30d": 0,
      "commits90d": 21,
      "mergedPrs30d": 0,
      "mergedPrs90d": 13,
      "releases12m": 0,
      "openIssues": 0,
      "closedIssues30d": 0
    },
    {
      "date": "2026-04-10",
      "stars": 0,
      "forks": 1,
      "watchers": 0,
      "contributors": 2,
      "commits30d": 0,
      "commits90d": 21,
      "mergedPrs30d": 0,
      "mergedPrs90d": 10,
      "releases12m": 0,
      "openIssues": 0,
      "closedIssues30d": 0
    },
    {
      "date": "2026-04-14",
      "stars": 0,
      "forks": 1,
      "watchers": 0,
      "contributors": 2,
      "commits30d": 0,
      "commits90d": 21,
      "mergedPrs30d": 0,
      "mergedPrs90d": 10,
      "releases12m": 0,
      "openIssues": 0,
      "closedIssues30d": 0
    },
    {
      "date": "2026-04-16",
      "stars": 0,
      "forks": 1,
      "watchers": 0,
      "contributors": 2,
      "commits30d": 0,
      "commits90d": 21,
      "mergedPrs30d": 0,
      "mergedPrs90d": 10,
      "releases12m": 0,
      "openIssues": 0,
      "closedIssues30d": 0
    },
    {
      "date": "2026-04-19",
      "stars": 0,
      "forks": 1,
      "watchers": 0,
      "contributors": 2,
      "commits30d": 0,
      "commits90d": 21,
      "mergedPrs30d": 0,
      "mergedPrs90d": 10,
      "releases12m": 0,
      "openIssues": 0,
      "closedIssues30d": 0
    },
    {
      "date": "2026-04-22",
      "stars": 0,
      "forks": 1,
      "watchers": 0,
      "contributors": 3,
      "commits30d": 25,
      "commits90d": 25,
      "mergedPrs30d": 1,
      "mergedPrs90d": 8,
      "releases12m": 0,
      "openIssues": 1,
      "closedIssues30d": 0
    },
    {
      "date": "2026-04-23",
      "stars": 0,
      "forks": 1,
      "watchers": 0,
      "contributors": 3,
      "commits30d": 29,
      "commits90d": 29,
      "mergedPrs30d": 2,
      "mergedPrs90d": 9,
      "releases12m": 0,
      "openIssues": 0,
      "closedIssues30d": 0
    },
    {
      "date": "2026-04-24",
      "stars": 0,
      "forks": 1,
      "watchers": 0,
      "contributors": 3,
      "commits30d": 29,
      "commits90d": 29,
      "mergedPrs30d": 2,
      "mergedPrs90d": 9,
      "releases12m": 0,
      "openIssues": 0,
      "closedIssues30d": 0
    },
    {
      "date": "2026-04-25",
      "stars": 0,
      "forks": 1,
      "watchers": 0,
      "contributors": 3,
      "commits30d": 29,
      "commits90d": 29,
      "mergedPrs30d": 2,
      "mergedPrs90d": 9,
      "releases12m": 0,
      "openIssues": 0,
      "closedIssues30d": 0
    },
    {
      "date": "2026-04-26",
      "stars": 0,
      "forks": 1,
      "watchers": 0,
      "contributors": 3,
      "commits30d": 28,
      "commits90d": 29,
      "mergedPrs30d": 2,
      "mergedPrs90d": 9,
      "releases12m": 0,
      "openIssues": 0,
      "closedIssues30d": 0
    },
    {
      "date": "2026-04-29",
      "stars": 0,
      "forks": 1,
      "watchers": 0,
      "contributors": 3,
      "commits30d": 28,
      "commits90d": 29,
      "mergedPrs30d": 2,
      "mergedPrs90d": 9,
      "releases12m": 0,
      "openIssues": 0,
      "closedIssues30d": 0
    }
  ],
  "socialAccounts": [],
  "recentTweets": []
}
