This is an application for tracking the performance of basketball players. The target users for this application are basketball coaches, who would like to track their players on MyTeam and get recommendations on scouting adivce that their team can use to prepare for games against opponent teams. The current use-case is the NBA, simply because of easy data availability, but future steps for this project would be to populate the database with players from multiple different leagues.
-
Users can login and logout
-
Users can create new user profiles
-
App interacts with a database (PostgreSQL)
-
App interacts with an API (nbaStats: https://github.com/nprasad2077/nbaStats?tab=readme-ov-file)
-
App has multiple views (login, playersView, myTeamView)
-
App has interesting cursor interaction (for all clickable components, tooltip changes from arrow to pointer and hover effects)
-
One component with complex visual styling (player cards that flip)
-
Loading state for visual polish
-
TC1:
- Users can add opponents to an opponent team
- Users can get recommendations on actions for the team to take in order to beat the opponent team
- Users get an automatically sorted roster of the best players to beat the opponent
- Users can manually switch between team playing styles to see what players are best for each style
-
TC2:
- User can view any stat for any player in a dynamically rendered line graph
- User can see a visual of how their team and the opponenet team stack up in a normalized stacked bar graph
- For players with shot chart data available, the user can see a shot chart of the most taken shots
- Deployed the project on Render: https://numbers-game-f22.onrender.com (currently suspended to preserve free instance)
- Error boundary, exception handling backend to prevent server crash, exception handling frontend ui feedback
Project Plan Template https://docs.google.com/document/d/1XMbMFwffzl_6LVnV6zjWeBsCPwuEpOKleVwxlnbizTM/edit?usp=sharing
Weekly Problem Solving Journal https://docs.google.com/document/d/1HgJcuj2wtsTkL9GQl9VmGbC2MB3dE_IsBLyqxm0i46o/edit?usp=sharing