Skip to content

UniCT-WebDevelopment/GestoreAstaFantacalcio

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Gestore Asta Fantacalcio

Gestore Asta Fantacalcio è un'applicazione web client-server progettata per digitalizzare e gestire in tempo reale l'asta del Fantacalcio. Il sistema permette a un amministratore (battitore) di proporre i calciatori e alle varie squadre (fantallenatori) di acquistare i giocatori, con calcolo automatico dei crediti residui e composizione delle rose. !!Attenzione non si sostituisce alla vera asta, ma permette al superadmin e ai fantaAllenatori una gestione dell'asta ordinata. Quali sono i vataggi che propone l'utilizzo del gestore:

  • Admin non ha bisogno di segnarsi i crediti di ogni squadra.
  • Fantallenatore non deve perdere tempo a scrivere il nome del giocatore, dato che è l'admin che scorre il listone con un click, il fantallenatore dovrà solamente scrivere il prezzo finale, al quale ha preso il giocatore.
  • Appena un fantallenatore ha vinto l'asta e inserisce il prezzo, a tutti i fantaallenatori arriva una notifica push con informazioni relative all'acquisto
  • Nel caso di errori ralativi ad acquisti, admin potrà subito modificare quest'ultimo
  • Crediti di tutte le squadre disponibili a tutti.

Caratteristiche principali

  • Gestione real-time: Sincronizzazione istantanea tra amministratore e squadre tramite Socket.io.
  • Pannello Amministratore: Interfaccia dedicata per il battitore per scorrere il listone, cercare giocatori specifici, modificare crediti errati o rimuovere acquisti.
  • Gestione Squadre: Registrazione squadre con budget iniziale (default 1000 crediti) e controllo automatico della disponibilità economica.
  • Composizione Rosa: Visualizzazione in tempo reale della propria rosa con indicazione del ruolo (P, D, C, A).
  • Notifiche e Limiti: Avvisi visivi per acquisti confermati e notifiche automatiche quando si raggiunge il numero massimo di giocatori per un determinato ruolo (es. 3 Portieri, 8 Difensori, etc.).
  • Persistenza Dati: Salvataggio automatico delle rose su file locali (rose.txt e file JSON per singola squadra).

Prerequisiti

Per il corretto funzionamento, è necessario che nella root del progetto sia presente un file listone.json contenente l'elenco dei calciatori (struttura attesa: array di oggetti con proprietà Id, Nome, Ruolo, Squadra).

Installazione

Esegui il seguente comando per installare le dipendenze necessarie:

npm install

Esecuzione

Esegui il seguente comando per far partire il server:

node main.js
  • Lato Utente (Squadre): Collegarsi su [http://localhost:3000/]
  • Lato Amministratore (Battitore): Collegarsi su [http://localhost:3000/admin]

Tecnologie (Client)

  • HTML/CSS: Interfaccia grafica responsiva e personalizzata.
  • Vanilla JavaScript: Logica lato client per la gestione del DOM e degli eventi.
  • Socket.io Client: Per la comunicazione bidirezionale in tempo reale con il server (aggiornamento giocatore corrente, notifiche acquisti. è importante che i giocatori non debbano gestire nulla se non i crediti per cui hanno acquistato il giocatore).
  • Local Storage: Per mantenere la sessione della squadra attiva in caso di refresh della pagina.

Dipendenze (Server) (Node.js)

  • Pacchetto express: Framework per gestire le rotte HTTP (API e servire i file statici).
  • Pacchetto http: Per creare il server web.
  • Pacchetto socket.io: Per gestire la comunicazione WebSocket in tempo reale.
  • Pacchetto fs e path: Moduli nativi di Node.js per la lettura del listone e il salvataggio dei file delle rose.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published