gitmyhub

plot-twist

TypeScript ★ 0 updated 17d ago

AI-narrated, TxLINE-verified football fan calls with wallet-signed Solana achievements

A free, AI-narrated football fan-engagement app that verifies match events and stamps completed sessions as Solana wallet achievements.

TypeScriptOllamaSolanaElevenLabsTxLINEsetup: hardcomplexity 4/5

Plot Twist turns real football match events into short, free challenges fans can play along with while watching a game. It pulls verified match data from a service called TxLINE, has an AI model called Ollama write brief, narrated headlines about what just happened, and uses fixed rules, not the AI, to decide who wins each call. Completed sessions can be stamped as an achievement on the Solana blockchain, signed with the fan's own crypto wallet.

The demo included in this repository replays a real, verified Spain versus Belgium match, compressing the original timing so a judge or reviewer can walk through the whole flow quickly while keeping the true event order, score, and match minute intact. The same system is designed to work with TxLINE's live match data in production, and the app also loads a broader catalog of World Cup fixtures split into finished, live, and upcoming matches, showing only real data and marking anything unavailable as such rather than making it up.

Importantly, there is no betting, wagering, or financial payout involved. Fans earn experience points, streaks, and blockchain-recorded achievements, not money. The project describes itself as a second-screen companion for watching football rather than a gambling product.

Under the hood, TxLINE supplies verified scores and odds, Ollama's cloud model writes the emotional headline text for each moment, and a separate deterministic system decides the actual outcome, XP, and achievement details, so the AI never controls scoring. Match recaps can also be read aloud using a text-to-speech voice service called ElevenLabs, with a fallback to the browser's built in speech feature if that service is unavailable. When a fan completes a session, the app can create a signed transaction on the Solana blockchain's test network as proof of their achievement, which the server double-checks before showing it as verified in the interface.

The project is written in TypeScript and is built as a working demo rather than a polished commercial product.

Where it fits