Welland Pool League - Management & Statistics Platform

This repository contains the source code for the Welland Pool League (WPL), a comprehensive web platform for league management and real-time statistics tracking.

Live Site: https://wpl.codersden.com


About This Project

This web application was developed to modernize and replace a manual, spreadsheet-based system for a local pool league. It provides a centralized, interactive, and full-featured platform for players, captains, and administrators to manage all aspects of the league, from initial schedule creation to final season standings.


Tech Stack

The application is built on a modern .NET stack, leveraging the following technologies:

  • Framework: Blazor Server - For a rich, interactive, and stateful UI with C#.
  • UI Component Library: MudBlazor - A material design component library that provides pre-built, responsive UI elements.
  • Language: C# - The primary language for all front-end and back-end application logic.
  • Database: SQL Server - The relational database used for all league data.
  • Authentication: Auth0 - For secure user authentication, management, and role-based access control.

Core Features

The platform is divided into features for league members and powerful tools for administrators.

League Features (For All Users)

  • Real-Time Standings: Automatically calculated and updated standings for both individual players and teams.
  • Full Season Schedules: View the complete weekly and playoff schedules.
  • Team Rosters: Access up-to-date team and player roster information.
  • User Profile Management: Users can view and manage their own profile information after logging in.

Administrative Features

  • Advanced Schedule Management:
    • Automatic Schedule Generator: A powerful tool to generate complete round-robin (single or double) schedules for all active teams based on a start date and game day.
    • Schedule Validation & Analysis: The generator validates the created schedule for fairness (e.g., balanced home/away games) and provides detailed statistics before saving.
    • Manual Game Editor: Full CRUD (Create, Read, Update, Delete) capabilities for individual games within a schedule.
  • Comprehensive User & Role Management:
    • Auth0 Integration: Securely manage all league members through Auth0.
    • User Administration: Create, block/unblock, and delete users directly from the admin dashboard.
    • Role Assignment: Dynamically assign roles (e.g., League_Admin, Super_User) to users to control access to administrative features.
  • Detailed Data Entry:
    • Player Game Reporting: Admins can enter weekly wins and losses for each player in the league.
    • Content Management: Full control over league data including Teams, Players, and Bars.

Click the image below to visit the site.

Welland Pool League Preview

An unhandled error has occurred. Reload 🗙