Projects/7007 Premier League

Live competition / 2026

7007 Premier League

Four friends. One season. Every selection locked before kickoff.

StatusLive / Public leaderboard
RoleProduct direction & iteration

Why I built it

7007 turns a private, locked-picks football competition into one clear live answer: who is winning right now—and why?

The product

Making the premise tangible.

Each competitor selected one club from five weighted tiers, a Golden Boot scorer and season-long calls for the top five, relegation, first manager to leave and total league goals. Official league points and goals flow into a deterministic scoring engine; monthly gains, bonus awards and the final goals tiebreak are layered on top. The public experience opens on the current table, expands every score into its calculation, and keeps the locked predictions, awards and rules one tap away.

How it evolved

The thinking behind the build.

01

Start with the rules, not a fantasy template

There are four competitors, five weighted club picks each and no transfers, drafts or weekly submissions. Treating that constraint as the premise prevented the build from drifting into features the competition did not need.

02

Make one table explain a whole season

The homepage had to answer the live question immediately while still revealing why the order had changed. Expandable rows now separate club, scorer and bonus points and retain movement from the previous calculation.

03

Turn edge cases into rules

Monthly prizes only bank after the final fixture of the month; top-five and relegation points wait until season end; the first-manager call is resolved administratively; total goals breaks a final tie. Encoding those moments made the system deterministic rather than interpretive.

04

Design for imperfect live data

A structured football-data feed replaced the idea of scraping a public page. Provider mappings, caching, sync throttling and a last-known-good state keep a temporary API problem from corrupting the competition.

05

Give the competition its own identity

The working name described the group; 7007 described the product. The rebrand sharpened the visual system around a season-long scoreboard rather than a private in-joke.

The product / In context

Key decisions

Where product judgement showed up.

  1. 01Open on the current leaderboard because ‘who is winning now?’ is the product’s primary job
  2. 02Keep every preseason selection immutable and make duplicate picks part of the strategy
  3. 03Calculate scores from official league points and goals instead of maintaining a parallel spreadsheet
  4. 04Show the arithmetic behind every total so a live ranking can be checked, not merely trusted
  5. 05Cache the last valid football snapshot and provide admin recovery paths rather than replace good data with a failed sync
  6. 06Use initials and a read-only public experience—no player accounts, contact details or editing

My role / AI’s role

I defined the competition, entries, multipliers, scoring rules, exceptions and the standard for what the live table needed to explain. AI helped translate that system into the data model, rules engine, football-data sync, admin recovery tools, responsive interface and test suite. The rules remained the source of truth; the build had to earn the right to automate them.

Iteration

The first build was the beginning.

The work moved well beyond laying out a league table. We separated base score from bonuses, kept partial-month results provisional, defined when Christmas and season-end awards actually lock, and preserved the previous valid snapshot when the football provider fails. The data route also changed: a proposed direct scrape gave way to a structured football-data feed with explicit mappings, caching and manual recovery. Finally, the product shed its working Pepperoni Premier League name and became 7007—a tighter identity for the competition that had actually emerged.

What I learned

  • Fixed inputs can still create a dynamic product when the state and stakes keep changing.
  • A live score is only credible when users can inspect the calculation behind it.
  • Sports-data reliability is a product concern: fallbacks and error states matter as much as the happy path.
  • A familiar competition becomes software only after its informal rules and edge cases are made explicit.