GithubHelp home page GithubHelp logo

afcon-predictor's Introduction

This is a Web application where users can predict their winner for this year's edition of the Africa Cup Of Nations (AFCON) taking place in Cote D'Ivoire.

The AFCON, is the Football / Soccer championshup for the entire African continent. This will be the 34th edition of the tournament, and 24 teams will be participating.

The first phase of the tournament is known as the "Group Stage" where the 24 teams are split into 6 groups of 4, and all play each other once. Teams get 3 points for a win, 1 point for a draw and 0 points for a loss. Here is group A for example. (1st place in Group A = A1, 2nd place = A2, etc etc)

Screen Shot 2023-12-26 at 9 54 56 AM

After those 3 games, the top 2 teams from each group (12 teams in total) automatiacally advance to the knockout stage.

The knockout stage need 16 teams, but we have 12 so far. To come up with 4 more teams to advance, the 6 3rd placed teams from the group stage are ranked. The top 4 of those 6 3rd placed teams advance the knockout stage along with the 12 teams from earlier.

Which consists of the 12 teams that autoamtically adavanced from the group stage, as well as the 4 best 3rd placed teams. (The 6 3rd placed teams are ranked by their points, goal difference, goals scored, etc):

Screen Shot 2023-12-26 at 9 56 17 AM

These 16 teams fill up a single elimination bracket, shrinking to 8 teams in the quarter finals, 4 teams in the semi finals, and 2 teams in the final.

Screen Shot 2023-12-26 at 9 51 01 AM

The problem is, if you wanna sit down and predict how the bracket is going to be populated, it completely depends on the group stage rankings and which 4 of the 6 best 3rd placed teams are advancing. So it becomes really complicated to work it out on paper. Depending on which of the 4 best 3rd placed teams qualify, the bracket can be populated 15 different ways.

Screen Shot 2023-12-26 at 9 57 32 AM

So that was my motivation for this web app! The goal is to be able to sort the groups into your predicted ranking (drag and drop) and then sort the 3rd placed teams, then finally populate the round of 16 bracket automatically.

I used React, TypeScript, React DND-Toolkit, etc.

afcon-predictor's People

Contributors

yahya-s9 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.