Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/Danielsl4/TFG_DAM_2526/llms.txt

Use this file to discover all available pages before exploring further.

FutsalLeague Manager is a full-stack platform for running futsal (indoor football) leagues. It covers everything from season setup and match scheduling through live score entry, automatic standings calculation, and a fan-facing prediction game. Administrators and referees get a dedicated panel; players and fans get a clean public interface with real-time data.

Quick Start

Get the platform running locally in a few steps — backend API, frontend, and database.

Architecture

Understand how the backend, frontend, database, and cache fit together.

Core Features

Explore match management, standings, statistics, and the voting system.

API Reference

Full REST API documentation with request/response examples for every endpoint.

What you can do with FutsalLeague Manager

Match management

Schedule matches, assign referees and fields, record goals and cards live, and finalize results that automatically update standings.

Group standings

Automatic group-stage classification with full FIFA-style tie-breaking rules and best fourth-place ranking for knockout rounds.

Player & team stats

Per-season leaderboards for top scorers, most yellow/red cards, best offense, best defense, and clean sheets.

Match predictions

Fans predict match outcomes (home/draw/away) before kick-off and earn points. A live leaderboard tracks the top predictors each season.

Admin panel

Full CRUD for teams, players, users, seasons, and groups. Cloudinary-powered image uploads, audit logs, and PDF export for reports.

Referee tools

Referees lock matches for exclusive edit access, record events in real time, and finalize results — all protected by role-based authentication.

Get started in four steps

1

Set up the database

Create a PostgreSQL database and run node init_db.js inside the backend/ directory to create all tables, enums, and constraints.
2

Start the backend API

Configure your .env file with database credentials, JWT secret, Redis URL, and Cloudinary keys, then run npm start inside backend/.
3

Launch the frontend

Inside frontend/, run ng serve. The Angular app connects to the backend API and is ready to use at http://localhost:4200.
4

Create your first season

Log in as an admin, open the Competitions panel, and create a season with groups, teams, and players — then schedule your first matches.
The platform uses JWT-based authentication with three roles: admin, referee, and user. The first admin account must be created directly in the database or promoted via the admin panel.

Build docs developers (and LLMs) love