fpl-compare

Fantasy Premier League is the most popular fantasy sports game with over 7 million users worldwide. This app compares and visualize stats from different players to help users choose high-scoring players.

The app consumes data from the Fantasy Premier League's unofficial API, and is built using Create React App and Uber's react-vis charting library.

Context

A lot decisions in this game -- and life in general -- tend to be reactive. A player will score prompting users, or managers, to bring him into their teams, only for that same player to "blank" for the next month. Managers are often short-sighted and make player transfers based on these kinds of proximal data.

The site as of the time of writing only really shows basic statistics, mostly all in the form of tables. Player comparisons become arduous. Users waste time flipping between multiple tabs and often make player transfers on a hunch.

This app makes player comparisons more efficient by plotting player data in visually intuitive ways.

Challenges

The main challenges of this app were:

  • API provided by Fantasy Premier League has no documentation (needed to make sense of lots of JSON data)
  • issues with CORS accessibility (needed to create proxy server with custom headers to access endpoints
  • endpoints were limited in richness (often needed to do custom processing and aggregation)