Files
CRAPP/docs/ROADMAP.md
T
davideandClaude Sonnet 5.5 985fc2fcc1 Notifica di compleanno: auguri al festeggiato, avviso agli altri (DD-047)
Ogni giorno, dalle 8:00 (Europe/Rome), un job pg_cron orario manda a chi compie
gli anni «Buon compleanno, <Nome>! 🎂» e a tutti gli altri membri attivi,
allenatori compresi, «Oggi è il compleanno di <Nome>» (con più compleanni lo
stesso giorno un solo messaggio a testa, nomi in ordine alfabetico). Solo
titolo, senza corpo né età. Canali: push, centro notifiche ed email.

- migration m31: tipi `compleanno` e `compleanno_auguri`, registro
  `compleanni_notificati` (una sola volta per destinatario e giorno, anche se la
  notifica viene eliminata), funzione `genera_avvisi_compleanno()` e job
  `avvisi-compleanno`, trigger push esteso ai nuovi tipi. Non ancora applicata
  in produzione.
- 29 febbraio non gestito: chi è nato quel giorno è avvisato solo negli anni
  bisestili (limite noto, documentato).
- test: integrazione `notifiche-compleanno` (ora e ora legale, destinatari,
  più compleanni, registro, coda push/email, 29 febbraio, job pianificato);
  unit sui nuovi tipi e sul corpo vuoto del service worker.
- documentazione: DD-047, catalogo e testi delle notifiche, DATABASE, CHANGELOG,
  ROADMAP, PROJECT_STATE.

Chiude la issue #11.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-06 10:18:22 +02:00

3.1 KiB

Roadmap

Elenco unico delle funzionalità di CrAPP, fatte e previste. È la fonte di riferimento per il cosa: CHANGELOG.md registra quando una voce è stata rilasciata e con quale versione, PROJECT_STATE.md cosa si sta facendo adesso.

Fatto

Tutto quello che è rilasciato, fino alla versione 1.0.0 (vedi CHANGELOG.md).

  • Gestione squadra

  • Calendario

  • Presenze

  • Serie di presenze

  • Scout Live

  • Badge

  • Badge social

  • Pagelle

  • Votazione MVP

  • Obiettivi di squadra

  • Turno palloni

  • Infortuni — conteggio eventi saltati, in forma minima

  • Notifiche Push (promemoria intelligenti)

  • Centro notifiche in-app — pallino con il numero delle non lette sull'avatar del profilo (il tap sul pallino apre l'elenco), indipendente dalla push (messaggi admin, promemoria evento, turno palloni, sollecito presenze)

  • Dashboard amministratore

  • Download CSV dati

  • Profilo Giocatore — dati personali, documento d'identità, certificato medico (caricamento, scadenza, stato, download); la foto tessera è stata tolta (DD-044); lo storico dei certificati resta un'estensione futura

  • Gestione tesseramenti CSI — raccolta dati, export CSV e tracciamento di chi è già tesserato (numero e data di tessera)

  • Collegamento CSI (stagione 2025/26)

  • Classifica automatica (campionato e Coppa)

  • Risultati campionato

  • Dettaglio partita — formazioni, storico scontri diretti e probabilità di vittoria calcolata dal CSI

  • Ruolo allenatore — gestisce gli eventi e sollecita le presenze, profilo ridotto senza stagione e badge (specifica, DD-034)

  • Avviso certificati in scadenza — in Home, giallo nei 7 giorni prima, nero dopo la scadenza e rosso se il certificato manca (DD-046): agli admin con i nomi dei giocatori, al giocatore solo per il proprio (specifica, DD-035, DD-046)

  • Notifiche email — ogni notifica in-app inviata anche per email agli account registrati, da un worker Docker sull'host di casa via Gmail, con interruttore «Email» in Profilo (specifica, DD-036)

  • Notifiche automatiche — turno palloni 3 ore prima, sollecito presenze 24 ore prima (i pulsanti «Avvisa chi è di turno» e «Sollecita» restano; il promemoria a 24 e 3 ore è stato tolto, DD-043) (specifica, DD-040)

  • Notifica di compleanno — auguri al festeggiato e avviso a tutti gli altri, ogni giorno dalle 8:00, su push, centro notifiche ed email (specifica, DD-047)

Prossimo

  • Calendario ufficiale — i dati delle gare future arrivano già dal feed CSI, la pagina Campionato usa solo quelle giocate
  • Database esercizi
  • AI Allenamenti
  • Archivio allenamenti

Idee future

  • Gestione quote
  • Calendario Google
  • Backup automatici
  • Analisi statistiche avanzate
  • Widget meteo
  • Analisi Scout con AI