Sports Statistics

Introduction

You were hired by a sports club to build a software that will keep track of their teams statistics. They’ve tried several different apps but none was exactly what they wanted so decided to budget for an in-house developer. You’re lucky that your Blazor skills are now soaring and you’re ready to deliver. So far you have learned almost everything needed to fulfil the projects requisites. We will only add the ability to show data charts to help their coaches visualize the players performances. Let’s get started!

Requirements

  • This is an application that will track and generate reports about a sports team's performance.
  • The app will have a page divided two areas: The UI where the in-game data will be tracked and an area showing the current statistics.
  • The app will have a reports area in a different page showing the players statistics across multiple games. Coaches should be able to se detailed players information per game and per season. This area should contain barcharts with the players performance.
  • The UI needs to contain a list of players with 5 parameters that will be tracked (i.e. passes, shots, rebounds, blocks, interceptions, in basketball.
  • Data should be tracked with the click of a button. (i.e. a rebound button clicked on Dennis Rodman's row will track a rebound at a given time in the game).
  • The reports area should be updated immediately upon a button being clicked.

Resources

You should have all skills necessary to complete this project, except for adding charts . Here are a couple of resources to get you started.

What you'll learn

  • If you haven't used Blazor + JS Interop before this might be a could opportunity to start. You don't need JS for most things in Blazor, but it might come in handy at times. Create a small project to practice it.
  • If you get stuck implementing Angular Material in your project, take a step back and build a couple of simple purely front-end projects from Youtube tutorials.

Challenges

  • Add the possibility of tracking the area of the playing field where an action happened, with a click on the fields area.
  • Add an Admin area where players can be added.
  • Add Authentication and Authorization so only logged in users can use the app.
  • Add role-based authorization with roles like: "view only", "admin", and "superuser"
Log in to mark this article as read and save your progress.
An unhandled error has occurred. Reload 🗙