Add project documentation and AI development guidelines
This commit is contained in:
@@ -0,0 +1,37 @@
|
||||
# Architecture Summary
|
||||
|
||||
Frontend
|
||||
|
||||
- React
|
||||
- TanStack Start
|
||||
- Tailwind
|
||||
- TypeScript
|
||||
|
||||
Backend
|
||||
|
||||
- Supabase
|
||||
|
||||
Hosting
|
||||
|
||||
- Vercel
|
||||
|
||||
Repository
|
||||
|
||||
- GitHub
|
||||
|
||||
Branch
|
||||
|
||||
- main
|
||||
- develop
|
||||
|
||||
Documentazione
|
||||
|
||||
- docs/
|
||||
|
||||
Database
|
||||
|
||||
- Supabase
|
||||
|
||||
Storage
|
||||
|
||||
- Supabase Storage
|
||||
@@ -0,0 +1,12 @@
|
||||
# Coding Style
|
||||
|
||||
Preferenze del progetto.
|
||||
|
||||
- Utilizzare TypeScript.
|
||||
- Preferire funzioni piccole.
|
||||
- Evitare duplicazione di codice.
|
||||
- Utilizzare componenti React riutilizzabili.
|
||||
- Commentare solamente il codice realmente complesso.
|
||||
- Preferire nomi descrittivi.
|
||||
- Non introdurre librerie senza reale necessità.
|
||||
- Mantenere la struttura esistente del progetto.
|
||||
@@ -0,0 +1,22 @@
|
||||
# CrAPP Context
|
||||
|
||||
CrAPP è una Progressive Web App dedicata alla gestione di una squadra di pallavolo amatoriale.
|
||||
|
||||
L'obiettivo principale NON è solamente registrare dati.
|
||||
|
||||
L'obiettivo è ridurre il lavoro amministrativo degli amministratori e aumentare il coinvolgimento dei giocatori attraverso gamification, statistiche e strumenti intelligenti.
|
||||
|
||||
Quando implementi nuove funzionalità:
|
||||
|
||||
- privilegia semplicità
|
||||
- mantieni la coerenza dell'interfaccia
|
||||
- evita duplicazioni
|
||||
- leggi sempre la documentazione presente in `docs/`
|
||||
|
||||
Prima di scrivere codice consulta:
|
||||
|
||||
- README
|
||||
- ROADMAP
|
||||
- DATABASE
|
||||
- ARCHITECTURE
|
||||
- il modulo interessato in `docs/modules`
|
||||
@@ -0,0 +1,11 @@
|
||||
# Development Workflow
|
||||
|
||||
Ogni nuova funzionalità segue questo flusso.
|
||||
|
||||
1. Discussione funzionale.
|
||||
2. Documento in `docs/modules`.
|
||||
3. Progettazione database.
|
||||
4. Implementazione su branch `develop`.
|
||||
5. Test.
|
||||
6. Merge su `main`.
|
||||
7. Deploy automatico tramite Vercel.
|
||||
@@ -0,0 +1,29 @@
|
||||
# Project Rules
|
||||
|
||||
Queste regole devono essere rispettate per qualsiasi modifica al progetto.
|
||||
|
||||
## Regole generali
|
||||
|
||||
- Non modificare il branch `main` direttamente.
|
||||
- Tutte le nuove funzionalità vengono sviluppate su `develop`.
|
||||
- Prima di implementare una funzionalità leggere sempre la documentazione presente in `docs/`.
|
||||
- Non creare codice duplicato.
|
||||
- Riutilizzare sempre componenti già esistenti quando possibile.
|
||||
- Mantenere uno stile coerente con il progetto.
|
||||
|
||||
## Database
|
||||
|
||||
- Non modificare il database senza creare una nuova migration Supabase.
|
||||
- Non eliminare tabelle esistenti senza esplicita richiesta.
|
||||
- Preferire nuove tabelle rispetto all'aggiunta di molte colonne quando il modulo è indipendente.
|
||||
|
||||
## Componenti
|
||||
|
||||
- Preferire componenti piccoli e riutilizzabili.
|
||||
- Evitare componenti con responsabilità multiple.
|
||||
|
||||
## Documentazione
|
||||
|
||||
Ogni nuova funzionalità deve essere documentata prima dell'implementazione.
|
||||
|
||||
La documentazione tecnica si trova nella cartella `docs/`.
|
||||
@@ -1,10 +1,228 @@
|
||||
<!-- LOVABLE:BEGIN -->
|
||||
> [!IMPORTANT]
|
||||
> This project is connected to [Lovable](https://lovable.dev). Avoid rewriting
|
||||
> published git history — force pushing, or rebasing/amending/squashing commits
|
||||
> that are already pushed — as it rewrites history on Lovable's side and the
|
||||
> user will likely lose their project history.
|
||||
>
|
||||
> Commits you push to the connected branch sync back to Lovable and show up in
|
||||
> the editor, so keep the branch in a working state.
|
||||
<!-- LOVABLE:END -->
|
||||
# AGENTS.md
|
||||
|
||||
# CrAPP - AI Development Guide
|
||||
|
||||
Questo documento definisce le regole che qualsiasi assistente AI (Cursor, Claude Code, Codex, ChatGPT o altri) deve seguire quando lavora su questo progetto.
|
||||
|
||||
---
|
||||
|
||||
# Obiettivo del progetto
|
||||
|
||||
CrAPP è una Progressive Web App sviluppata per digitalizzare completamente la gestione di una squadra di pallavolo.
|
||||
|
||||
L'obiettivo principale è:
|
||||
|
||||
- ridurre il lavoro amministrativo degli amministratori;
|
||||
- aumentare il coinvolgimento dei giocatori;
|
||||
- centralizzare tutte le informazioni della squadra;
|
||||
- utilizzare l'intelligenza artificiale solo quando porta un reale beneficio.
|
||||
|
||||
---
|
||||
|
||||
# Prima di modificare il codice
|
||||
|
||||
Prima di implementare qualsiasi modifica leggere sempre:
|
||||
|
||||
1. docs/README.md
|
||||
2. docs/VISION.md
|
||||
3. docs/ROADMAP.md
|
||||
4. docs/ARCHITECTURE.md
|
||||
5. docs/DATABASE.md
|
||||
6. docs/TODO.md
|
||||
7. il documento interessato in docs/modules/
|
||||
|
||||
Non implementare funzionalità non documentate.
|
||||
|
||||
---
|
||||
|
||||
# Workflow di sviluppo
|
||||
|
||||
Ogni nuova funzionalità segue sempre questo processo.
|
||||
|
||||
Idea
|
||||
|
||||
↓
|
||||
|
||||
Progettazione
|
||||
|
||||
↓
|
||||
|
||||
Documentazione
|
||||
|
||||
↓
|
||||
|
||||
Database
|
||||
|
||||
↓
|
||||
|
||||
Implementazione
|
||||
|
||||
↓
|
||||
|
||||
Test
|
||||
|
||||
↓
|
||||
|
||||
Merge su main
|
||||
|
||||
↓
|
||||
|
||||
Deploy automatico
|
||||
|
||||
---
|
||||
|
||||
# Git
|
||||
|
||||
Il repository utilizza due branch principali.
|
||||
|
||||
## main
|
||||
|
||||
Versione stabile.
|
||||
|
||||
Qualsiasi modifica deve mantenere l'app perfettamente funzionante.
|
||||
|
||||
## develop
|
||||
|
||||
Branch utilizzato per lo sviluppo delle nuove funzionalità.
|
||||
|
||||
Tutte le nuove implementazioni devono essere realizzate qui.
|
||||
|
||||
---
|
||||
|
||||
# Architettura
|
||||
|
||||
Frontend
|
||||
|
||||
- React
|
||||
- TypeScript
|
||||
- TanStack Start
|
||||
- Tailwind CSS
|
||||
|
||||
Backend
|
||||
|
||||
- Supabase
|
||||
|
||||
Hosting
|
||||
|
||||
- Vercel
|
||||
|
||||
Repository
|
||||
|
||||
- GitHub
|
||||
|
||||
---
|
||||
|
||||
# Database
|
||||
|
||||
Il database utilizza Supabase.
|
||||
|
||||
Regole:
|
||||
|
||||
- non eliminare tabelle esistenti;
|
||||
- non modificare lo schema senza creare una migration;
|
||||
- preferire strutture scalabili;
|
||||
- evitare duplicazione dei dati.
|
||||
|
||||
Fare sempre riferimento a:
|
||||
|
||||
docs/DATABASE.md
|
||||
|
||||
---
|
||||
|
||||
# Componenti
|
||||
|
||||
Preferire:
|
||||
|
||||
- componenti piccoli;
|
||||
- componenti riutilizzabili;
|
||||
- responsabilità singola;
|
||||
- codice semplice da mantenere.
|
||||
|
||||
Evitare duplicazioni.
|
||||
|
||||
---
|
||||
|
||||
# Interfaccia
|
||||
|
||||
Lo stile dell'app deve rimanere coerente.
|
||||
|
||||
Principi:
|
||||
|
||||
- semplice;
|
||||
- moderna;
|
||||
- pulita;
|
||||
- veloce;
|
||||
- ottimizzata per smartphone;
|
||||
- poche schermate;
|
||||
- pochi click.
|
||||
|
||||
---
|
||||
|
||||
# Documentazione
|
||||
|
||||
Ogni nuova funzionalità deve essere documentata prima dello sviluppo.
|
||||
|
||||
La documentazione dei moduli si trova in:
|
||||
|
||||
docs/modules/
|
||||
|
||||
Aggiornare sempre, quando necessario:
|
||||
|
||||
- ROADMAP.md
|
||||
- CHANGELOG.md
|
||||
- TODO.md
|
||||
- DATABASE.md (se il database cambia)
|
||||
---
|
||||
|
||||
# Struttura della documentazione
|
||||
|
||||
La cartella `docs/` rappresenta la documentazione ufficiale del progetto.
|
||||
|
||||
## Documenti principali
|
||||
|
||||
- README.md → panoramica del progetto
|
||||
- VISION.md → obiettivi e filosofia
|
||||
- ROADMAP.md → evoluzione prevista
|
||||
- ARCHITECTURE.md → architettura tecnica
|
||||
- DATABASE.md → struttura del database
|
||||
- CHANGELOG.md → cronologia delle modifiche
|
||||
- TODO.md → attività pianificate
|
||||
|
||||
## Moduli
|
||||
|
||||
La cartella `docs/modules/` contiene una specifica funzionale per ogni modulo dell'applicazione.
|
||||
|
||||
Ogni nuovo modulo deve essere progettato e documentato prima dell'implementazione.
|
||||
---
|
||||
|
||||
# Regole
|
||||
|
||||
L'AI non deve:
|
||||
|
||||
- introdurre librerie senza necessità;
|
||||
- modificare il database senza motivazione;
|
||||
- eliminare funzionalità esistenti;
|
||||
- modificare il comportamento dell'app senza richiesta esplicita.
|
||||
|
||||
L'AI deve:
|
||||
|
||||
- spiegare le modifiche importanti;
|
||||
- mantenere compatibilità con il codice esistente;
|
||||
- privilegiare la semplicità;
|
||||
- riutilizzare i componenti esistenti.
|
||||
|
||||
---
|
||||
|
||||
# Filosofia del progetto
|
||||
|
||||
Prima di scrivere codice chiedersi sempre:
|
||||
|
||||
Questa modifica rende CrAPP più semplice?
|
||||
|
||||
Riduce il lavoro degli amministratori?
|
||||
|
||||
Migliora l'esperienza dei giocatori?
|
||||
|
||||
È coerente con la documentazione?
|
||||
|
||||
Se almeno una risposta è negativa, rivalutare la soluzione proposta.
|
||||
@@ -0,0 +1,50 @@
|
||||
# Project State
|
||||
|
||||
Ultimo aggiornamento: 07/08/2026
|
||||
|
||||
## Stato generale
|
||||
|
||||
Fase corrente:
|
||||
|
||||
Progettazione dell'area Profilo Giocatore.
|
||||
|
||||
---
|
||||
|
||||
## Infrastruttura
|
||||
|
||||
- Sviluppo locale configurato
|
||||
- GitHub configurato
|
||||
- Vercel configurato
|
||||
- Branch develop operativo
|
||||
|
||||
---
|
||||
|
||||
## Moduli completati
|
||||
|
||||
- Squadra
|
||||
- Presenze
|
||||
- Badge
|
||||
- Scout Live
|
||||
- Pagelle
|
||||
- MVP
|
||||
- Notifiche
|
||||
|
||||
---
|
||||
|
||||
## Modulo in progettazione
|
||||
|
||||
Profilo Giocatore
|
||||
|
||||
---
|
||||
|
||||
## Prossimo sviluppo
|
||||
|
||||
Implementazione del modulo Profilo Giocatore.
|
||||
|
||||
---
|
||||
|
||||
## Note
|
||||
|
||||
Il progetto segue una metodologia document-first.
|
||||
|
||||
Ogni nuova funzionalità viene progettata nella cartella `docs/modules/` prima di essere implementata.
|
||||
@@ -1,118 +1,95 @@
|
||||
# CRAP Volley Hub
|
||||
# CrAPP 🏐
|
||||
|
||||
CrAPP – App per CRAP Volley
|
||||
CrAPP è una Progressive Web App sviluppata per digitalizzare completamente la gestione di una squadra di pallavolo.
|
||||
|
||||
Vorrei sviluppare un’app mobile per la squadra di pallavolo CRAP Volley, con nome CrAPP, disponibile per Android e iOS. L’obiettivo è creare un’app semplice da usare, moderna, bella da vedere e più coinvolgente rispetto a SportEasy, includendo anche funzionalità normalmente a pagamento in altre app.
|
||||
## Funzionalità principali
|
||||
|
||||
Funzionalità principali
|
||||
- Gestione squadra
|
||||
- Gestione presenze
|
||||
- Calendario allenamenti e partite
|
||||
- Scout Live
|
||||
- Badge e gamification
|
||||
- Statistiche
|
||||
- Notifiche intelligenti
|
||||
- Gestione amministrativa
|
||||
- AI per la pianificazione degli allenamenti (in sviluppo)
|
||||
|
||||
Gestione presenze/assenze
|
||||
---
|
||||
|
||||
Partite
|
||||
## Stack tecnologico
|
||||
|
||||
Allenamenti
|
||||
- React 19
|
||||
- TypeScript
|
||||
- TanStack Start
|
||||
- Vite
|
||||
- Tailwind CSS
|
||||
- Supabase
|
||||
- GitHub
|
||||
- Vercel
|
||||
|
||||
Eventi extra
|
||||
---
|
||||
|
||||
Stati rapidi: presente, assente, forse, in ritardo, indisponibile, infortunato
|
||||
## Ambienti
|
||||
|
||||
Statistiche giocatori
|
||||
- `main` → Produzione
|
||||
- `develop` → Sviluppo
|
||||
|
||||
Presenze totali
|
||||
---
|
||||
|
||||
Presenze consecutive
|
||||
## Avvio locale
|
||||
|
||||
Gol/punti o altre statistiche specifiche della pallavolo
|
||||
|
||||
MVP, migliori performance, medie stagione
|
||||
|
||||
Statistiche partite
|
||||
|
||||
Risultati
|
||||
|
||||
Formazioni
|
||||
|
||||
Andamento set
|
||||
|
||||
Storico match
|
||||
|
||||
Campionato in tempo reale
|
||||
|
||||
Visualizzazione classifica e risultati
|
||||
|
||||
Dati presi direttamente dal sito del CSI
|
||||
|
||||
Aggiornamento automatico o importazione periodica
|
||||
|
||||
Calendario squadra
|
||||
|
||||
Allenamenti
|
||||
|
||||
Partite
|
||||
|
||||
Promemoria
|
||||
|
||||
Vista mensile e lista eventi
|
||||
|
||||
Profilo giocatore
|
||||
|
||||
Foto
|
||||
|
||||
Ruolo
|
||||
|
||||
Statistiche personali
|
||||
|
||||
Badge e obiettivi
|
||||
|
||||
Idea di stile
|
||||
|
||||
Interfaccia sportiva, pulita e moderna
|
||||
|
||||
Molto mobile-first
|
||||
|
||||
Design divertente, energico e più “premium”
|
||||
|
||||
Inserire in seguito il logo della squadra
|
||||
|
||||
Possibile uso di badge, livelli, premi e mini-gamification per rendere l’app più piacevole da usare
|
||||
|
||||
Extra che sarebbe bello aggiungere
|
||||
|
||||
Notifiche push per convocazioni e cambi orario
|
||||
|
||||
Chat o bacheca squadra
|
||||
|
||||
Report automatici dopo le partite
|
||||
|
||||
Sondaggi rapidi per disponibilità
|
||||
|
||||
Sezione “Best of the match”
|
||||
|
||||
Obiettivi di gruppo per presenza e continuità
|
||||
|
||||
Obiettivo finale
|
||||
|
||||
Realizzare una app che non sia solo utile per la gestione della squadra, ma anche piacevole, coinvolgente e bella da usare ogni giorno.
|
||||
|
||||
This project was built with [Lovable](https://lovable.dev).
|
||||
|
||||
**Live app**: https://volley-cronos-app.lovable.app
|
||||
|
||||
## Build with Lovable
|
||||
|
||||
Continue developing this project in the [Lovable editor](https://lovable.dev/projects/8d07b0e4-6bd2-4a17-9dd2-bb2cf13f9f7c).
|
||||
|
||||
- **Ship faster**: describe what you want to build and Lovable handles the code.
|
||||
- **Stay in sync**: every change made in Lovable is committed straight to this repository.
|
||||
- **Full ownership**: this code is yours. Push to `main` on GitHub and your changes sync back into Lovable, ready for your next prompt.
|
||||
|
||||
## Development
|
||||
|
||||
Prefer working locally? You need Node.js and npm — [install with nvm](https://github.com/nvm-sh/nvm#installing-and-updating).
|
||||
|
||||
```sh
|
||||
git clone <this-repository-url>
|
||||
cd <repository-name>
|
||||
npm i
|
||||
```bash
|
||||
npm install
|
||||
npm run dev
|
||||
```
|
||||
|
||||
L'app sarà disponibile su:
|
||||
|
||||
```
|
||||
http://localhost:8080
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Build
|
||||
|
||||
```bash
|
||||
npm run build
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Deploy
|
||||
|
||||
Il deploy è automatico tramite Vercel ad ogni push sul branch `main`.
|
||||
|
||||
Le modifiche sviluppate nel branch `develop` vengono pubblicate automaticamente come Preview Deployment.
|
||||
|
||||
---
|
||||
|
||||
## Variabili d'ambiente
|
||||
|
||||
Il progetto richiede le seguenti variabili:
|
||||
|
||||
- `SUPABASE_URL`
|
||||
- `SUPABASE_PUBLISHABLE_KEY`
|
||||
- `VITE_SUPABASE_URL`
|
||||
- `VITE_SUPABASE_PUBLISHABLE_KEY`
|
||||
|
||||
---
|
||||
|
||||
## Repository
|
||||
|
||||
Il codice sorgente è gestito tramite GitHub.
|
||||
|
||||
Flusso di sviluppo:
|
||||
|
||||
```
|
||||
develop
|
||||
↓
|
||||
Test
|
||||
↓
|
||||
Merge su main
|
||||
↓
|
||||
Deploy automatico Vercel
|
||||
```
|
||||
@@ -0,0 +1,71 @@
|
||||
# Architettura del progetto
|
||||
|
||||
## Frontend
|
||||
|
||||
- React 19
|
||||
- TypeScript
|
||||
- TanStack Start
|
||||
- Vite
|
||||
- Tailwind CSS
|
||||
- Radix UI
|
||||
|
||||
---
|
||||
|
||||
## Backend
|
||||
|
||||
- Supabase
|
||||
|
||||
---
|
||||
|
||||
## Hosting
|
||||
|
||||
- Vercel
|
||||
|
||||
---
|
||||
|
||||
## Versionamento
|
||||
|
||||
- Git
|
||||
- GitHub
|
||||
|
||||
---
|
||||
|
||||
## Branch
|
||||
|
||||
- main → Produzione
|
||||
- develop → Sviluppo
|
||||
|
||||
---
|
||||
|
||||
## Struttura del progetto
|
||||
|
||||
src/
|
||||
|
||||
- components/
|
||||
- routes/
|
||||
- lib/
|
||||
- integrations/
|
||||
- hooks/
|
||||
- assets/
|
||||
|
||||
supabase/
|
||||
|
||||
docs/
|
||||
|
||||
---
|
||||
|
||||
## Flusso di sviluppo
|
||||
|
||||
develop
|
||||
|
||||
↓
|
||||
|
||||
Test
|
||||
|
||||
↓
|
||||
|
||||
Merge su main
|
||||
|
||||
↓
|
||||
|
||||
Deploy automatico su Vercel
|
||||
@@ -0,0 +1,30 @@
|
||||
# Changelog
|
||||
|
||||
Tutte le modifiche significative del progetto vengono registrate in questo documento.
|
||||
|
||||
---
|
||||
|
||||
## Versione attuale
|
||||
|
||||
### Infrastruttura
|
||||
|
||||
- Migrazione completa da Lovable a sviluppo locale.
|
||||
- Configurazione Git.
|
||||
- Repository GitHub indipendente.
|
||||
- Deploy automatico tramite Vercel.
|
||||
- Branch main e develop.
|
||||
|
||||
---
|
||||
|
||||
## Funzionalità implementate
|
||||
|
||||
- Gestione squadra
|
||||
- Calendario
|
||||
- Presenze
|
||||
- Scout Live
|
||||
- Badge
|
||||
- Obiettivi di squadra
|
||||
- Pagelle
|
||||
- Badge social
|
||||
- Serie di presenze
|
||||
- Notifiche intelligenti
|
||||
@@ -0,0 +1,159 @@
|
||||
# Database CrAPP
|
||||
|
||||
## Obiettivo
|
||||
|
||||
Questo documento descrive la struttura del database Supabase e il ruolo di ogni tabella.
|
||||
|
||||
---
|
||||
|
||||
# Utenti
|
||||
|
||||
## giocatori
|
||||
|
||||
Contiene l'anagrafica dei giocatori.
|
||||
|
||||
Utilizzato da:
|
||||
|
||||
- Squadra
|
||||
- Profili
|
||||
- Presenze
|
||||
- Scout
|
||||
- Badge
|
||||
- Pagelle
|
||||
|
||||
---
|
||||
|
||||
## user_roles
|
||||
|
||||
Definisce i ruoli applicativi.
|
||||
|
||||
Esempi:
|
||||
|
||||
- amministratore
|
||||
- giocatore
|
||||
|
||||
---
|
||||
|
||||
# Eventi
|
||||
|
||||
## eventi
|
||||
|
||||
Calendario generale.
|
||||
|
||||
Comprende:
|
||||
|
||||
- allenamenti
|
||||
- partite
|
||||
- eventi della squadra
|
||||
|
||||
---
|
||||
|
||||
## eventi_app
|
||||
|
||||
Eventi gestionali utilizzati dall'app.
|
||||
|
||||
---
|
||||
|
||||
# Presenze
|
||||
|
||||
## presenze
|
||||
|
||||
Gestisce le presenze agli eventi.
|
||||
|
||||
---
|
||||
|
||||
## risposte_presenze
|
||||
|
||||
Memorizza le risposte dei giocatori.
|
||||
|
||||
---
|
||||
|
||||
# Scout
|
||||
|
||||
## scout_sessioni
|
||||
|
||||
Sessioni di Scout Live.
|
||||
|
||||
Una sessione corrisponde ad una partita.
|
||||
|
||||
---
|
||||
|
||||
## scout_live
|
||||
|
||||
Eventi registrati durante lo Scout Live.
|
||||
|
||||
Serve esclusivamente per statistiche di squadra.
|
||||
|
||||
---
|
||||
|
||||
# Votazioni
|
||||
|
||||
## mvp_voti
|
||||
|
||||
Voti MVP assegnati a fine partita.
|
||||
|
||||
---
|
||||
|
||||
## pagelle_voti
|
||||
|
||||
Voti anonimi assegnati ai giocatori.
|
||||
|
||||
Utilizzati per il voto medio.
|
||||
|
||||
---
|
||||
|
||||
## badge_social_voti
|
||||
|
||||
Voti social per i badge.
|
||||
|
||||
---
|
||||
|
||||
# Badge
|
||||
|
||||
Attualmente i badge vengono calcolati dall'applicazione.
|
||||
|
||||
Non esiste una tabella dedicata.
|
||||
|
||||
---
|
||||
|
||||
# Turni
|
||||
|
||||
## turni_palloni
|
||||
|
||||
Gestione dei turni palloni.
|
||||
|
||||
---
|
||||
|
||||
# Notifiche
|
||||
|
||||
## push_subscriptions
|
||||
|
||||
Dispositivi registrati per le notifiche Push.
|
||||
|
||||
---
|
||||
|
||||
## promemoria_push
|
||||
|
||||
Storico dei promemoria inviati.
|
||||
|
||||
---
|
||||
|
||||
# Funzioni speciali
|
||||
|
||||
## cacche_partita
|
||||
|
||||
Sondaggio prepartita.
|
||||
|
||||
Utilizzato per statistiche e badge segreti.
|
||||
|
||||
---
|
||||
|
||||
# Moduli futuri
|
||||
|
||||
Da implementare
|
||||
|
||||
- Certificati medici
|
||||
- Tesseramenti CSI
|
||||
- Database allenamenti
|
||||
- AI Allenamenti
|
||||
- Integrazione CSI
|
||||
@@ -0,0 +1,46 @@
|
||||
# Roadmap
|
||||
|
||||
## Versione 1.0
|
||||
|
||||
- [x] Gestione squadra
|
||||
- [x] Calendario
|
||||
- [x] Presenze
|
||||
- [x] Scout Live
|
||||
- [x] Badge
|
||||
- [x] Obiettivi di squadra
|
||||
- [x] Notifiche Push
|
||||
|
||||
---
|
||||
|
||||
## Versione 1.1
|
||||
|
||||
- [ ] Certificati medici
|
||||
- [ ] Gestione tesseramenti CSI
|
||||
- [ ] Dashboard amministratore
|
||||
- [ ] Download CSV dati
|
||||
|
||||
---
|
||||
|
||||
## Versione 1.2
|
||||
|
||||
- [ ] Database esercizi
|
||||
- [ ] AI Allenamenti
|
||||
- [ ] Archivio allenamenti
|
||||
|
||||
---
|
||||
|
||||
## Versione 2.0
|
||||
|
||||
- [ ] Collegamento CSI
|
||||
- [ ] Classifica automatica
|
||||
- [ ] Risultati campionato
|
||||
- [ ] Calendario ufficiale
|
||||
|
||||
---
|
||||
|
||||
## Idee future
|
||||
|
||||
- [ ] Gestione quote
|
||||
- [ ] Calendario Google
|
||||
- [ ] Backup automatici
|
||||
- [ ] Analisi statistiche avanzate
|
||||
@@ -0,0 +1,29 @@
|
||||
# TODO
|
||||
|
||||
## In corso
|
||||
|
||||
- Documentazione tecnica del progetto.
|
||||
|
||||
---
|
||||
|
||||
## Prossimo
|
||||
|
||||
- Certificati medici.
|
||||
- Gestione tesseramenti CSI.
|
||||
|
||||
---
|
||||
|
||||
## Backlog
|
||||
|
||||
- AI Allenamenti.
|
||||
- Dashboard amministratore.
|
||||
- Collegamento CSI.
|
||||
|
||||
---
|
||||
|
||||
## Idee
|
||||
|
||||
- Gestione quote.
|
||||
- Widget meteo.
|
||||
- Analisi Scout con AI.
|
||||
- Backup automatici.
|
||||
@@ -0,0 +1,38 @@
|
||||
# Visione del progetto
|
||||
|
||||
## Missione
|
||||
|
||||
CrAPP nasce con un obiettivo semplice:
|
||||
|
||||
Digitalizzare completamente la gestione di una squadra di pallavolo, eliminando il maggior numero possibile di attività manuali e aumentando il coinvolgimento dei giocatori attraverso strumenti moderni e intuitivi.
|
||||
|
||||
---
|
||||
|
||||
## Principi del progetto
|
||||
|
||||
Ogni funzionalità sviluppata deve rispettare almeno uno di questi principi:
|
||||
|
||||
- Ridurre il lavoro amministrativo.
|
||||
- Migliorare il coinvolgimento della squadra.
|
||||
- Centralizzare tutte le informazioni in un'unica piattaforma.
|
||||
- Automatizzare le attività ripetitive.
|
||||
- Sfruttare l'intelligenza artificiale solo quando porta un reale beneficio.
|
||||
|
||||
---
|
||||
|
||||
## Filosofia
|
||||
|
||||
CrAPP deve essere:
|
||||
|
||||
- Semplice
|
||||
- Veloce
|
||||
- Divertente
|
||||
- Intuitiva
|
||||
- Accessibile da smartphone
|
||||
- Utilizzabile anche da persone poco esperte
|
||||
|
||||
---
|
||||
|
||||
## Obiettivo finale
|
||||
|
||||
Diventare il punto di riferimento per la gestione quotidiana della squadra, sostituendo chat, fogli Excel e strumenti separati con un'unica applicazione.
|
||||
@@ -0,0 +1,281 @@
|
||||
# Profilo Giocatore
|
||||
|
||||
## Obiettivo
|
||||
|
||||
Il modulo "Profilo Giocatore" raccoglie tutte le informazioni personali, amministrative e documentali di ciascun membro della squadra.
|
||||
|
||||
L'obiettivo è centralizzare in un'unica schermata tutti i dati necessari sia al giocatore sia agli amministratori, eliminando la gestione tramite chat, documenti cartacei e fogli Excel.
|
||||
|
||||
---
|
||||
|
||||
# Utenti
|
||||
|
||||
## Giocatore
|
||||
|
||||
Può:
|
||||
|
||||
- visualizzare il proprio profilo
|
||||
- modificare i propri dati personali
|
||||
- aggiornare il certificato medico
|
||||
- aggiornare i documenti
|
||||
- caricare le immagini richieste
|
||||
|
||||
---
|
||||
|
||||
## Amministratore
|
||||
|
||||
Può:
|
||||
|
||||
- visualizzare il profilo di tutti i giocatori
|
||||
- scaricare documenti e certificati
|
||||
- esportare i dati necessari al tesseramento CSI
|
||||
- verificare lo stato di completamento dei profili
|
||||
|
||||
---
|
||||
|
||||
# Flusso utente
|
||||
|
||||
## Primo accesso
|
||||
|
||||
1. Login tramite Google oppure Email.
|
||||
2. Selezione del proprio giocatore.
|
||||
3. Accesso alla Home.
|
||||
|
||||
Se il profilo non è completo compare automaticamente un widget di completamento.
|
||||
|
||||
---
|
||||
|
||||
# Home
|
||||
|
||||
Il giocatore visualizza un widget dedicato.
|
||||
|
||||
## Completa il tuo profilo
|
||||
|
||||
Viene mostrata una barra di avanzamento.
|
||||
|
||||
Esempio
|
||||
|
||||
Profilo completato
|
||||
|
||||
85%
|
||||
|
||||
La barra è composta dalle seguenti sezioni.
|
||||
|
||||
- Dati personali
|
||||
- Documento di identità
|
||||
- Certificato medico
|
||||
- Foto tessera
|
||||
|
||||
Quando tutte le sezioni sono complete il widget scompare automaticamente.
|
||||
|
||||
---
|
||||
|
||||
# Profilo
|
||||
|
||||
Il profilo viene suddiviso in cinque aree.
|
||||
|
||||
## Dati Giocatore
|
||||
|
||||
Contiene.
|
||||
|
||||
### Dati squadra
|
||||
|
||||
Solo lettura.
|
||||
|
||||
- Nome
|
||||
- Cognome
|
||||
- Numero di maglia
|
||||
- Ruolo
|
||||
|
||||
Questi dati sono gestiti esclusivamente dagli amministratori.
|
||||
|
||||
---
|
||||
|
||||
### Dati personali
|
||||
|
||||
Modificabili dal giocatore.
|
||||
|
||||
- Data di nascita
|
||||
- Luogo di nascita
|
||||
- Indirizzo di residenza
|
||||
- Telefono
|
||||
- Email
|
||||
|
||||
---
|
||||
|
||||
## Documento di identità
|
||||
|
||||
Campi.
|
||||
|
||||
- Tipo documento
|
||||
- Numero documento
|
||||
- Rilasciato da
|
||||
- Data emissione
|
||||
- Data scadenza
|
||||
|
||||
Upload.
|
||||
|
||||
- Foto fronte
|
||||
- Foto retro
|
||||
|
||||
---
|
||||
|
||||
## Certificato medico
|
||||
|
||||
Campi.
|
||||
|
||||
- Data di scadenza
|
||||
|
||||
Upload.
|
||||
|
||||
- Certificato medico
|
||||
|
||||
Il giocatore può aggiornare liberamente sia la data sia il file.
|
||||
|
||||
Lo storico non viene mantenuto nella prima versione.
|
||||
|
||||
---
|
||||
|
||||
## Foto tessera
|
||||
|
||||
Upload di una fotografia formato tessera.
|
||||
|
||||
Utilizzata dagli amministratori per il tesseramento CSI.
|
||||
|
||||
---
|
||||
|
||||
## Statistiche
|
||||
|
||||
Sezione già presente.
|
||||
|
||||
Contiene.
|
||||
|
||||
- Presenze
|
||||
- Voto medio
|
||||
- MVP
|
||||
- Serie
|
||||
- Altre statistiche disponibili
|
||||
|
||||
---
|
||||
|
||||
## Badge
|
||||
|
||||
Sezione già presente.
|
||||
|
||||
Contiene tutti i badge ottenuti e quelli ancora da sbloccare.
|
||||
|
||||
---
|
||||
|
||||
## Impostazioni
|
||||
|
||||
Contiene.
|
||||
|
||||
- Logout
|
||||
- Preferenze notifiche
|
||||
- Impostazioni applicazione
|
||||
|
||||
---
|
||||
|
||||
# Dashboard amministratore
|
||||
|
||||
Gli amministratori dispongono di una schermata dedicata.
|
||||
|
||||
Per ogni giocatore vengono mostrati.
|
||||
|
||||
- Stato del profilo
|
||||
- Certificato medico
|
||||
- Documento di identità
|
||||
- Foto tessera
|
||||
|
||||
Azioni disponibili.
|
||||
|
||||
- Visualizza profilo
|
||||
- Scarica certificato
|
||||
- Scarica documento
|
||||
- Scarica foto tessera
|
||||
|
||||
---
|
||||
|
||||
# Esportazione CSI
|
||||
|
||||
Gli amministratori possono esportare un file CSV contenente esclusivamente i dati richiesti per il tesseramento.
|
||||
|
||||
Campi esportati.
|
||||
|
||||
- Nome
|
||||
- Cognome
|
||||
- Data di nascita
|
||||
- Luogo di nascita
|
||||
- Indirizzo
|
||||
- Telefono
|
||||
- Email
|
||||
- Tipo documento
|
||||
- Numero documento
|
||||
- Rilasciato da
|
||||
- Data emissione
|
||||
- Data scadenza
|
||||
|
||||
---
|
||||
|
||||
# Completamento profilo
|
||||
|
||||
Ogni sezione contribuisce alla percentuale di completamento.
|
||||
|
||||
## Pesi
|
||||
|
||||
Dati personali
|
||||
|
||||
30%
|
||||
|
||||
Documento di identità
|
||||
|
||||
30%
|
||||
|
||||
Certificato medico
|
||||
|
||||
30%
|
||||
|
||||
Foto tessera
|
||||
|
||||
10%
|
||||
|
||||
Quando tutte le sezioni risultano complete il profilo raggiunge il 100%.
|
||||
|
||||
---
|
||||
|
||||
# Permessi
|
||||
|
||||
## Giocatore
|
||||
|
||||
Può modificare esclusivamente il proprio profilo.
|
||||
|
||||
## Amministratore
|
||||
|
||||
Può visualizzare tutti i profili.
|
||||
|
||||
Può scaricare tutti i documenti.
|
||||
|
||||
Può esportare i dati.
|
||||
|
||||
---
|
||||
|
||||
# Versione 1
|
||||
|
||||
- Profilo giocatore
|
||||
- Completamento profilo
|
||||
- Gestione dati personali
|
||||
- Documento di identità
|
||||
- Certificato medico
|
||||
- Foto tessera
|
||||
- Dashboard amministratore
|
||||
- Esportazione CSV CSI
|
||||
|
||||
---
|
||||
|
||||
# Versioni future
|
||||
|
||||
- Storico certificati medici
|
||||
- Gestione documenti aggiuntivi
|
||||
- Consensi privacy
|
||||
- Firma digitale
|
||||
- Verifica automatica documenti
|
||||
Reference in New Issue
Block a user