You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
app-ideas/Projects/Sports-Bracket-Generator.md

46 lines
1.8 KiB

# Sports Bracket Generator
**Tier:** 2-Intermediate
Whether your main sport is soccer, baseball, cricket, or competitive
Esports following the progress of your favorite team during tournaments is an
activity enjoyed by many.
Tracking team progress is traditionally done using a horizontal tree diagram
showing all of the initial matches on the lefthand side. At the end of each
match the winner advances to the next round in the tournament along with the
winner of the adjacent match. Columns in the diagram are used to represent
each round and contain one-half of the teams in the adjacent column on the left
and twice as many teams as the adjacent column to the right. The number of
teams in each column decreases from left to right until the last round
(column) contains the final winner in the tournament.
The SportsBracket Generator automates the process of creating this type of chart by
drawing it in a browser window to relieve the user from having to draw it by
hand.
## User Stories
- [ ] User can enter the name of the tournament
- [ ] User can enter the starting and ending dates of the tournament
- [ ] User can enter the number of teams competing in the tournament
- [ ] User can see a warning if either the starting or ending date is
invalid
- [ ] User can see a warning if an odd number of competing teams is entered
## Bonus features
- [ ] User can enter the competing team names for each match
- [ ] User can enter the date for each match
- [ ] User can enter the final score for each match
- [ ] User can expect that this data will persist across sessions
## Useful links and resources
- [Bracket (tournament)](https://en.wikipedia.org/wiki/Bracket_(tournament))
## Example projects
- [Pure CSS & DOM Sports Bracket](https://codepen.io/cbleslie/pen/ZOLLXg)
- [Responsive Sports Bracket](https://codepen.io/MrCaseiro/pen/bxJpwV)