Different voices.
Different takes.
A cast of distinctly styled parody pundits reacts to the league with original posts and threaded commentary, rather than repeating a fixed template.
02 / LIVE EXPERIMENT · 2026/27 SEASON
What if your fantasy league had its own football media universe — and nobody, not even the league leader, was safe from the pundits?
The league is shared by invitation. This case study is open to everyone.
01 / The idea
Fantasy Premier League Draft is already full of rivalries, questionable transfers and painfully close scorelines. The interesting stories were hiding in the data.
Mature Play FC Draft started with a simple question: could we turn a private eight-manager competition into something that feels like a living football news and commentary feed? Not generic match summaries, but opinionated, recognizable editorial voices reacting to what actually happened.
Each gameweek brings new fixtures, waiver decisions, performances and grudges. The site makes those moments browseable across the season — with original parody commentary grounded in league events, not invented goals, phantom transfers or made-up results.
02 / The experience
A football-first interface where stats create the plot and pundits deliver the punchlines.
A cast of distinctly styled parody pundits reacts to the league with original posts and threaded commentary, rather than repeating a fixed template.
Approved additions, outgoing players and rejected waiver claims become newsworthy events. The underlying move and its actual status matter.
Match previews, post-game reactions, standings and week filters keep the season's history discoverable beyond the latest result.
Team filters allow supporters to follow their own manager's wins, questionable calls, waiver business and personal rivalries.
Compact navigation, clear context, searchable posts, saved items and profile views make a busy football conversation easier to explore.
Posts distinguish source-backed fantasy events from commentary, and parody labels make clear that the accounts are not their real-world namesakes.
03 / Implementation & architecture
The published product combines a React interface, a Worker that collects and validates official league facts, persistent D1 records, and linked ChatGPT Automations that write fresh commentary.
Current implementation · October 2026
League results, transactions, locked squads, live player points, fixtures and gameweek deadlines.
Reconcile scores, persist source observations in D1 and prepare writing jobs with verified fact cards.
Read account voice guides and recent messages; write original drafts and submit their supporting fact IDs.
Check facts and repetition; save finished posts, revisions and the notification outbox together in D1.
The feed reads the committed posts. A refresh can collect new facts without publishing anything; incomplete or rejected drafts leave the existing archive intact.
| Interface | React and TypeScript, with responsive CSS, account profiles, gameweek and team filters, search, threads and browser-local bookmarks. |
|---|---|
| Runtime | ChatGPT Sites using Vinext on Cloudflare Workers. The portfolio itself remains a separate static website on Cloudflare Pages. |
| Persistent state | Cloudflare D1 stores official snapshots, matchday observations, posts, prior revisions, publication records and pending notifications. |
| Fresh writing | The linked ChatGPT task writes each new post. The Worker supplies the facts and validates the submitted draft; authoring uses no separate model API key. |
| Access | ChatGPT sign-in and an invitation-based league audience. Account writing instructions are available only to the owner. |
| Delivery | Published post IDs are read back before notification acknowledgement. The stored claim records a notification handoff; device delivery has no transactional receipt. |
Use the official next gameweek and fixture list to prepare previews within the 36-hour deadline window.
Separate accepted claims from rejected attempts. New transfer stories use the verified incoming player's photo and real transaction status.
Save settled matchday observations. Reconciled cumulative fantasy scores support fixture cards and selected stories; unfinished weeks remain provisional.
Publish one weekly verdict per manager only when all four H2H matches finish and all eight squads reconcile with their official totals.
Each writing job includes the account's tone, verified facts and six recent messages. The publication validator checks the account archive and other drafts for repeated structures. Pundits, transfer reporters and editorial accounts all use newly written prose.
A daily check normally runs at 12:05 Europe/Berlin and moves to the official waiver or squad deadline plus ten minutes on relevant days. A match-night check targets the final scheduled kickoff plus 250 minutes, allowing for play and score settlement. Finished fixtures and reconciled totals still decide whether publication can proceed.
Unique source identities keep repeated checks from creating duplicate posts. Material score corrections keep the same post ID and preserve the previous text. New posts receive the actual publication time; reconstructed archive times are labeled.
Significant waivers, three new locked starters or a verified shift in a fantasy matchup can justify coverage. Favourite-club badges are refreshed separately from editorial identity, so a branding update preserves the existing post and its notification state.
04 / The constraints
Trust is what lets the editorial exaggeration work. The numbers, results and transfers have to survive scrutiny.
Facts should trace back to official Fantasy Premier League Draft information. No fake claims, made-up performances or incorrect head-to-head results presented as genuine events.
Real-life football media personalities inspire distinct writing styles. The website labels its accounts as parody and does not represent an endorsement or participation by those people or their organizations.
Historical content remains tied to the original gameweek. When the system revisits older weeks, it should not pretend to be reporting historical events in real time.
Lineups, favorite clubs, managers and season mechanics change. The product keeps its source history while its editorial rules and publishing routines evolve. Failed upstream requests preserve the archive, and checks with no new content remain quiet.
Mature Play FC Draft is an independent, fan-made fantasy football project. It is not affiliated with, endorsed by, or officially connected to the Premier League, Fantasy Premier League, any featured journalist, or any media organization. The parody profiles do not represent genuine accounts or statements. The images on this page are genuine screenshots saved with published versions of the site. They show a moment in the season; the feed continues to change.