Caricamento in corso...

Recupero dati d'istituto...

Connessione al registro
Recupero voti e valutazioni
Agenda e compiti
Assenze e annotazioni

0%

Errore di Sincronizzazione

Non è stato possibile recuperare i dati. Verifica la tua connessione e riprova.

Dashboard
S
—
Media Generale
—
Assenze Totali
—
—
Voti Negativi
—
Voti Positivi
NUOVO

Il tuo Anno Wrapped 🎉

Scopri voti, assenze, materie e molto altro nel tuo riepilogo personale dell'anno.

Scopri ora
—
—

Ultimi Voti

Vedi tutti

Medie per Materia

Media Tot: 0.00

Andamento Voti

Prossimi Impegni

    EduTrack Arena
    BETA

    Confronto Voti 1 vs 1

    Sfida un compagno in uno scontro statistico in tempo reale: confronta medie, radar delle materie e punti di forza nel pieno rispetto della privacy. (Funzione attualmente in versione Beta)

    Il Tuo Codice Sfida

    Genera un codice o condividi il link diretto

    ------

    Accetta la Sfida

    Inserisci il codice di 6 cifre del tuo amico

    EduTrack
    Arena • Head-to-Head 1 vs 1
    🏆 VINCITORE INDISCUSSO

    ATTESTATO DI VITTORIA

    Si attesta il trionfo nello scontro accademico 1 vs 1.

    Sfidante 1 (Tu)
    TU
    0.00
    0 voti registrati
    VS
    Sfidante 2
    AMICO
    0.00
    0 voti registrati
    Materia di Spicco: Matematica (+1.50)
    EduTrack Academic Battle Engine
    Certificato rilasciato e verificato digitalmente
    -
    VERIFIED
    DataMateriaVotoTipoEsito

    Google Calendar & Sincronizzazione Automatica

    Mantieni compiti, verifiche e lezioni sempre sincronizzati con il tuo calendario personale

    Sincronizzazione Automatica

    Grazie alla sincronizzazione automatica, Google Calendar o Apple Calendar riceveranno direttamente e in background tutti i compiti da svolgere, le date delle verifiche e gli argomenti delle lezioni inseriti dai docenti sul registro.

    Elementi da includere:
    Link privato del tuo Feed (.ics):

    Copia questo link se desideri aggiungerlo manualmente (su Google Calendar > "Altri calendari" > "Da URL", iOS > "Aggiungi calendario sottoscritto"):

    Come funziona la sincronizzazione automatica?
    1
    Collega il calendario

    Clicca su Aggiungi a Google Calendar. Si aprirà Google Calendar con il tuo feed privato già inserito.

    2
    Conferma l'aggiunta

    Conferma cliccando su "Aggiungi calendario" nella schermata di Google.

    3
    Tutto in automatico

    Google aggiornerà continuamente il calendario con le scadenze dei compiti e le verifiche future.

    Soglia Limite Assenze — 25%

    Superare il 25% delle ore totali comporta la non ammissione all'anno successivo

    0%
    0 ore mancate su 0 ore totali anno
    0 Assenze intere
    0 ore
    0 Ritardi
    0 ore
    0 Uscite anticip.
    0 ore
    0 Giustificate

    Registro Dettagliato

    DataGiornoTipoOre equiv.DettaglioStato

    Tessera Mensa

    Istituto Internazionale Edoardo Agnelli • Torino

    Badge Studente
    Caricamento...
    Servizio Mensa & Presenze Totem
    FORMATO
    CODE128
    —

    Informazioni sul Servizio Mensa

    • Presenta questo codice a barre direttamente al lettore ottico o al totem all'ingresso della mensa scolastica.
    • Toccando Ingrandisci per Scanner il codice si espande a schermo intero e può essere ruotato per facilitare la scansione del laser anche da smartphone.
    • Il codice è archiviato localmente sul dispositivo ed è utilizzabile anche in modalità offline.

    Notizie & Comunicazioni

    Clicca su una comunicazione per leggerne il contenuto e scaricare eventuali allegati.

    Cronologia Aggiornamenti

    v1.8.0 (Tessera Mensa Digitale & Topbar Polish)

    ATTUALE

    Badge mensa con codice a barre CODE128, scansione ingrandita a 90° su mobile e accesso rapido al Feedback

    • Nuova Sezione Tessera Mensa: Integrazione completa del tesserino scolastico con estrazione automatica del codice badge e foto studente dai server Mastercom, accessibile sia online che offline.
    • Codice a Barre CODE128 Vettoriale: Generazione client-side in formato standard CODE128 ad altissimo contrasto per garantire la compatibilità con tutti i lettori ottici e totem dell'Istituto Agnelli.
    • Ingrandimento per Scanner con Rotazione Automatica a 90° su Mobile: Toccando "Ingrandisci per Scanner", il pop-up su smartphone ruota automaticamente in orizzontale estendendosi per oltre l'80% dell'altezza dello schermo, rendendo il codice a barre gigante e istantaneamente scansionabile.
    • Navigazione Ottimizzata nella Sidebar e nel Menu Mobile: Posizionamento naturale della Tessera Mensa subito sotto ad Assenze nella barra laterale e subito dopo Monitoraggio nel menu mobile "Altro" (con griglia 3x3 perfetta).
    • Nuovo Pulsante Feedback in Topbar: Il pulsante Feedback è ora collocato in cima allo schermo accanto al tasto EduTrack AI, per inviare segnalazioni e suggerimenti in 1 solo tap da qualsiasi schermata.
    • Raffinamento Grafico e UX: Rimosse le diciture ridondanti, pulsante di aggiornamento manuale con feedback visivo e chiusura rapida del modale con un tocco sullo sfondo oscurato.

    v1.7.0 (Zero-Duplicate Push & Calendar Pro)

    Deduplicazione assoluta notifiche push, supporto nativo Apple Calendar (.ics) e layout calendario edge-to-edge

    • Zero Notifiche Duplicate (Idempotency Key): Riscritto il motore cron delle notifiche push con persistenza crittografica dello storico sul database. Una volta inviato un avviso (per voti, circolari, compiti o assenze), non viene mai più reinviato.
    • Supporto Apple Calendar One-Click: Nuovo pulsante dedicato per esportare istantaneamente qualsiasi impegno o lezione direttamente nell'app Calendario di iOS, iPadOS e macOS tramite file .ics generato al volo.
    • Dettagli Lezioni Arricchiti nel Calendario: Ogni evento esportato include orari precisi di inizio/fine lezione e la descrizione completa nel formato "Lezione: MATERIA - Dettagli".
    • Layout Calendario Edge-to-Edge: Riprogettato lo spazio orizzontale eliminando i vuoti laterali su tablet e desktop, ottimizzando la leggibilità degli impegni quotidiani e settimanali.
    • Ottimizzazione Build Vercel: Risolto il conflitto tra configurazioni di build e funzioni serverless, garantendo deployment ultra-rapidi e stabilità del backend.

    v1.6.0 (Smart Sync v2 & Live Auto-Refresh)

    Accesso veloce rinnovato, auto-refresh su notifiche push e ritorno in primo piano, pulsante sync dedicato

    • Risoluzione Stale Data su Accesso Veloce: Risolto definitivamente il problema dei dati bloccati alla vecchia cache. All'avvio dell'app i dati vengono caricati istantaneamente (0ms) e aggiornati fluidamente in background con le ultime novità da Mastercom.
    • Aggiornamento Istantaneo da Notifica Push (OneSignal): Cliccando su qualsiasi notifica push, l'app naviga direttamente alla sezione interessata e avvia all'istante una sincronizzazione forzata in background per mostrare subito il nuovo voto o compito.
    • Pulsante di Sincronizzazione Rapida nella Topbar: Introdotto un nuovo tasto dedicato nella barra superiore con icona animata e stato dinamico per forzare un refresh manuale in qualunque momento.
    • Riconnessione Automatica al Rientro nell'App (Resume Sync): Rilevamento automatico del ritorno dell'app in primo piano (visibilitychange e window focus) per sincronizzare il registro se l'ultimo aggiornamento risale a più di 2 minuti fa.
    • Scraping Ultra-Resiliente & Vercel Serverless Optimization: Protezione con fallback selettivo per ogni singolo modulo del registro (voti, compiti, agenda, assenze) ed estensione del timeout di esecuzione su Vercel a 60 secondi nella regione europea fra1 a bassissima latenza.
    • Notifiche Toast Intelligenti: Rilevamento automatico delle novità rispetto alla sessione precedente con avviso non invasivo "✨ Dati aggiornati dal registro".

    v1.5.0 (Sincronizzazione Calendario & Feed iCal)

    Integrazione bidirezionale con Google Calendar, Apple Calendar e feed iCalendar universale

    • Sezione Dedicata Sincronizzazione Calendario: Nuova schermata integrata nella sidebar per gestire e configurare la sincronizzazione automatica di Compiti, Argomenti e Agenda.
    • Feed iCalendar (.ics) Personale e Sicuro: Generazione di token crittografici privati per abbonarsi agli eventi scolastici da Google Calendar, iOS, macOS e Outlook con aggiornamento continuo.
    • Aggiunta Manuale Rapida su Card (Google & Apple): Pulsanti dedicati su ogni singolo impegno/lezione per esportare l'evento istantaneamente con un click sia su Google Calendar che con download diretto del file .ics per Apple Calendar.
    • Calcolo Intelligente degli Orari di Lezione: Parsing avanzato degli orari dalle schede scolastiche con generazione automatica di blocchi lezione da 1 ora (es. 10:15 – 11:15) e formattazione chiara della descrizione ("Lezione: MATERIA - Dettagli").
    • Layout Ottimizzato Full-Width: Riprogettazione dello spazio a schermo per eliminare aree vuote e garantire una visualizzazione pulita e senza attriti su tablet e desktop.

    v1.4.0 (AI Strategist 2.0 & Analisi Rinnovata)

    Motivazione contestuale, distinzione intelligente tra compiti e argomenti, aree critiche reali e piano d'azione

    • Riprogettazione Completa dell'Analisi Strategica: Nuovo motore analitico AI in 4 pilastri: Motivazione personalizzata, Priorità ordinate per scadenza, Aree Critiche e Strategia operativa.
    • Distinzione Rigorosa tra Compiti e Argomenti: L'intelligenza artificiale non confonde più le semplici lezioni svolte in classe con i compiti assegnati a casa, focalizzando le priorità sulle scadenze reali.
    • Aree Critiche Intelligenti senza Falsi Positivi: Eliminati i messaggi generici o vuoti; le criticità vengono segnalate solo in caso di verifiche imminenti o scadenze ravvicinate della stessa materia.
    • Fix "Readonly Database" su SQLite: Risolto l'errore di database bloccato in sola lettura durante le conversazioni con la chat AI, garantendo transazioni sicure e conteggio quote impeccabile.
    • Formattazione Grafica delle Schede Strategiche: Nuovi box visuali con icone tematiche, gradienti e liste numerate per una lettura rapida prima dello studio.

    v1.3.0 (Battle Arena & VS Confronto)

    Nuova esperienza gamificata 1 vs 1, radar materie, QR Code e attestato di vittoria

    • Interfaccia Battle Arena Gamificata: Scontro testa a testa Tu vs Amico con badge centrale al neon, contatore numerico fluido delle medie globali e banner del verdetto dinamico (In Vantaggio, In Svantaggio o Pareggio).
    • Effetto Coriandoli Festivo: Lancio di particelle coriandoli celebrative in caso di vittoria e superamento del punteggio avversario.
    • 4 Mini Cards Statistiche: Confronto istantaneo di voti totali presi, assenze & ritardi, materia dominante con delta massimo favorevole e conteggio voti eccellenti (≥ 8).
    • Radar Chart Comparativo (Spider Graph): Grafico radar a doppia area sovrapposta (blu per te, viola per l'amico) per confrontare all'istante i punti di forza in ogni disciplina scolastica.
    • Breakdown Materia per Materia con Delta Pills: Visualizzazione dettagliata con doppie barre progressive (0–10) e pillole colorate con lo scarto esatto (es. +0.75 o -0.50).
    • Condivisione Rapida con QR Code & Web Share: Generazione automatica di codici a 6 caratteri persistenti su database, copia rapida del solo codice, QR Code scansionabile con fotocamera e Deep Linking con avvio automatico della sfida.
    • Esportazione Attestato Ufficiale HD (.png): Download in 1 click di un attestato ufficiale ad alta risoluzione in stile EduTrack personalizzato con i dati della sfida e il sigillo di verifica.

    v1.2.0 (Notifiche Push & Centro Avvisi)

    Notifiche push istantanee per nuovi voti e comunicazioni, campanella topbar e preferenze personalizzate

    • Notifiche Push Real-Time (OneSignal): Ricezione istantanea di avvisi sonori e notifiche push su smartphone e desktop per ogni nuovo voto registrato dai docenti, assenze o compiti assegnati.
    • Centro Notifiche & Campanella Topbar: Nuova icona campanella in alto a destra con pallino blu (live dot) per visualizzare in un click la cronologia delle notifiche non lette.
    • Pannello Preferenze Notifiche: Sezione di controllo granulare in Impostazioni per scegliere liberamente quali tipologie di avviso ricevere (voti, assenze/ritardi, circolari, promemoria compiti).
    • Polling & Background Sync Automatico: Servizio lato server per il monitoraggio continuo del registro elettronico con invio mirato e crittografato delle notifiche a ciascun utente iscritto.
    • Onboarding con Richiesta Permessi Guidata: Banner non invasivo e modal di attivazione al primo accesso per configurare le notifiche in un solo tap.

    v1.1.0 (Smart Sync & Turbo Cache)

    Sincronizzazione istantanea, persistenza database e grafica mobile perfezionata

    • Sincronizzazione Istantanea (Cache-First / Stale-While-Revalidate): Layer di caching persistente su database (SQLite) per caricare i dati dello studente a tempo zero senza attendere lo scraping sequenziale di Mastercom.
    • Persistenza Serverless & Tolleranza Riavvi: I dati rimangono memorizzati nel database per 2 ore (o fino a refresh forzato) resistendo ai ricicli del server.
    • Modalità Offline Fallback: Se i server Mastercom risultano lenti o irraggiungibili, l'app mostra in automatico l'ultima versione memorizzata.
    • Schermata di Accesso Mobile Ottimizzata: Riprogettato completamente il layout della schermata di login su smartphone con proporzioni ergonomiche.
    • Icone PWA e Favicon HD: Generata l'icona ufficiale con trasparenza nativa a tutte le risoluzioni per l'installazione su home screen iOS e Android.

    v1.0.0 (Release Stabile)

    STABILE

    EduTrack esce dalla Beta ed entra in versione Stabile!

    • Fine della Beta: L'applicazione è ufficialmente stabile, matura e pronta per l'uso quotidiano.
    • EduTrack AI Chat Overhaul: Riprogettato completamente l'assistente IA integrando una chat conversazionale in tempo reale con cronologia e supporto avanzato.
    • Design Empty State Unificato: Tutte le sezioni vuote (voti, compiti, agenda, corsi, note, notizie) ora seguono un'unica linea stilistica con bellissimi placeholder grafici, animazioni e messaggi contestuali.
    • Rilevamento Fine Anno Scolastico: La dashboard riconosce in automatico quando il registro è formattato e vuoto (in estate o prima del riavvio) impostando un overlay celebrativo e calcolando la fascia temporale futura (es. 2026/2027).

    v0.34.0 (Notizie Funzionanti)

    Lettura Messaggi & Fix Sezione Comunicazioni

    • Lettura Notizie Completa: Cliccando su una comunicazione si apre un modal con il contenuto completo del messaggio, estratto dal thread del registro scolastico.
    • Mittente, Oggetto e Data nel Modal: Il popup mostra mittente, oggetto e data già in cache senza attendere il caricamento del testo.
    • Parsing HTML Normalizzato: Rimossi gli attributi class/style dal corpo del messaggio per un formato coerente tra tutte le comunicazioni.
    • Allegati Rilevati: Il sistema individua gli allegati con link S3 diretto. Il download è attualmente in fase di sviluppo.
    • Rilevamento Errori con Debug: Se un messaggio non si carica correttamente, il modal mostra l'errore con dettagli tecnici invece di un alert generico.
    • Banner Avviso Download: Aggiunto avviso giallo nel modal quando un messaggio contiene allegati, per indicare che il download è ancora in sviluppo.

    v0.33.0 (Export & Riorganizzazione)

    Esportazione Dati, Navigazione Migliorata & Pulizia Codice

    • Export ZIP Registro: Nuovo pulsante in Monitoraggio che genera uno ZIP scaricabile con quattro CSV (voti, medie per materia, assenze, note disciplinari) e un README di riepilogo — tutto calcolato in-browser con JSZip, senza passare dal server.
    • Sidebar Riorganizzata: La barra di navigazione sinistra è stata suddivisa in quattro gruppi logici — Panoramica, Rendimento, Agenda & Studio, Registro — con icone aggiornate per ogni voce.
    • Badge Beta su Confronta Voti: Aggiunto avviso visibile che segnala la funzione come sperimentale, in linea con il banner già presente su Notizie.
    • Pulizia Commenti: Rimossi oltre 20.000 caratteri di commenti da HTML, JS e CSS — codice più leggero e pronto per la produzione.

    v0.32.0 (Sync Screen Redesign)

    Schermata di Caricamento a Tema Scolastico

    • Icone Materie Animate: Sette icone tematiche (calcolatrice, chimica, libro, globo, palette, musica, laurea) oscillano in sequenza durante il caricamento, con il cappello da laurea centrale più grande e luminoso.
    • Step List Progressiva: Quattro card (Connessione, Voti, Agenda, Assenze) si attivano in ordine con pallino pulsante blu e diventano verdi al completamento.
    • Barra con Shimmer & Glow: Barra di progresso con gradiente, effetto luce scorrevole e percentuale testuale aggiornata in tempo reale.
    • Punti Animati nel Titolo: I tre punti di "Caricamento in corso..." rimbalzano uno ad uno per comunicare attività senza girare un semplice spinner.

    v0.31.0 (Guida Credenziali)

    Onboarding & Accessibilità Login

    • Popup Guida Credenziali: Aggiunto link "Come trovo le credenziali?" sotto il pulsante Accedi nella pagina di login. Cliccandolo si apre un popup a 4 passi che spiega come accedere al registro ufficiale Agnelli con Google, trovare il codice studente e reimpostare la password senza inserire quella vecchia.
    • Link Diretto al Registro: Il popup include un pulsante CTA che apre direttamente il sito ufficiale agnelli-to.registroelettronico.com in una nuova scheda.
    • Chiusura Intuitiva: Il modale si chiude cliccando fuori, con la × o premendo Escape — coerente con tutti gli altri popup dell'app.

    v0.30.0 (Feedback & Polish)

    Comunicazione Diretta & Rifinitura Finale

    • Sistema Feedback Gmail: Il form Feedback ora invia le segnalazioni direttamente via SMTP Gmail al team di sviluppo — nessun servizio di terze parti necessario.
    • Toast di Conferma: Dopo l'invio del feedback, un toast animato conferma il successo visivamente all'utente con un piccolo delay per garantire la visibilità.
    • Fallback Locale: Se il server SMTP non è configurato, il feedback viene salvato automaticamente su file locale senza alcun errore per l'utente.

    v0.29.0 (Wrapped Cleanup)

    Anno Wrapped Più Snello & Diretto

    • Rimossa Classifica Scolastica: Eliminata la slide "Dove sei nella scuola?" e il relativo modale di consenso per la privacy — il Wrapped è ora completamente locale.
    • Avvio Diretto: Il Wrapped si avvia immediatamente senza chiedere il consenso per la classifica, rendendo l'esperienza più fluida e veloce.
    • Correzione Numerazione Slide: Ridotto TOTAL_SLIDES da 10 a 9, aggiornata la barra di avanzamento e i confetti ora scattano correttamente sul Finale.

    v0.28.0 (Merge Conflict Fix)

    Stabilità e Integrità del Codice

    • Risoluzione Conflitti Git: Eliminati 3 blocchi di merge conflict in script.js che bloccavano completamente il caricamento dell'applicazione.
    • renderChartIfNeeded Unificato: Mantenuta la versione robusta con retry automatico e controllo visibilità del canvas prima del render dei grafici.
    • Protezione Canvas: Aggiunto controllo clientWidth === 0 per evitare render di grafici su elementi nascosti o non pronti nel DOM.

    v0.27.0 (Simulatore Mobile)

    Monitoraggio Ottimizzato per Smartphone

    • Layout Responsive a 3 Colonne: Il simulatore voti passa da 3 colonne fisse a layout adattivo: 2 colonne su tablet, colonna singola su mobile.
    • Header Simulatore Mobile: Il selettore materia e l'obiettivo si espandono a tutta larghezza su schermi piccoli per massima usabilità.
    • Touch-Friendly: Slider con altezza aumentata a 28px, input numerici compatti e font ridotti per leggibilità ottimale su qualsiasi dispositivo.

    v0.26.0 (Simulatore Vuoto)

    Esperienza Simulatore Più Intuitiva

    • Partenza Vuota: La lista voti simulati ora parte vuota invece di mostrare un 6 precaricato — i voti appaiono solo quando si clicca "Aggiungi".
    • Placeholder Intuitivo: Quando la lista è vuota, viene mostrata un'icona con testo "Nessun voto da simulare" al posto di un campo vuoto confuso.
    • Rimozione Totale: Rimosso il blocco che impediva di eliminare l'ultimo voto simulato — ora si possono rimuovere tutti.

    v0.25.0 (God Mode & Override)

    Simulatore Avanzato con Easter Egg

    • Modifica Voti Esistenti: Nuova colonna nel simulatore per modificare i voti reali già presenti — ogni voto mostra un input numerico editabile con chip colorato e data.
    • Ricalcolo in Tempo Reale: Media attuale e futura si aggiornano istantaneamente modificando qualsiasi voto; le righe modificate vengono evidenziate con bordo blu.
    • Reset Override: Pulsante dedicato per ripristinare tutti i voti modificati ai valori originali in un click.
    • Easter Egg — God Mode: Se l'utente "Matteo Busca" accede al Monitoraggio, tutti i voti vengono automaticamente impostati a 10 con toast animato speciale.

    v0.24.0 (Break & Pagamenti Admin)

    Contabilità Avanzata per Amministratori

    • Tipo Break: Aggiunto il tipo "Break" per le lezioni speciali nel pannello admin — le lezioni di tipo Break vengono escluse dai conteggi e dai calcoli pagamento.
    • Conferma Pagamento: Nuovo pulsante "Salda" nella scheda iscritti che aggiorna stato pagamento nel database e riflette il cambio nell'interfaccia in tempo reale.
    • Ordinamento Insegnanti: I docenti nel pannello contabilità sono ora ordinati per numero di lezioni decrescente per evidenziare subito i più attivi.

    v0.23.0 (Personalizzazione & Feedback Visivo)

    L'App che Riflette il Tuo Studio

    • Dynamic Theme Engine: Introdotta la modalità tema dinamico; il colore dell'interfaccia cambia automaticamente in base alla tua media (Verde = Eccellenza, Rosso = Emergenza).
    • UI Personalizzata: Aggiunti nuovi controlli nella sezione Personalizza per forzare l'accento colore o attivare il feedback dinamico.
    • Dashboard KPI Refresh: Nuove transizioni fluide sui contatori principali che si animano al caricamento dei dati.

    v0.22.0 (Challenge UI & Design Focus)

    Scontro Integrato & Design Pulito

    • Integrated Challenge: Il "Confronta Voti" abbandona lo stile esterno per adottare lo stesso design system premium dell'app principale.
    • Eliminazione Flashy Elements: Rimossi orbi fluttuanti e gradienti Spotify per favorire un'interfaccia più pulita, leggibile e professionale.
    • Radar Chart Theme-Aware: Il grafico radar della sfida ora rispetta perfettamente il tema Light/Dark dell'utente.

    v0.21.0 (Medie Pesate & Precisione)

    Calcoli Matematici Avanzati

    • Supporto Pesi (20%, 50%): Il sistema ora riconosce e processa i pesi variabili dei voti estratti dal registro.
    • Media Ponderata: Algoritmo di calcolo riscritto per fornire una media reale che rispecchia i calcoli ufficiali dei docenti.
    • Badge Peso: Visualizzazione immediata della percentuale di incidenza accanto ad ogni voto nella tabella valutazioni.

    v0.20.0 (Monitoraggio Intelligente)

    Controllo Totale sul Rendimento

    • Riepilogo Insufficienze: Nuova sezione automatica in Monitoraggio che elenca tutte le materie sotto la sufficienza con schede rapide di recupero.
    • Conditional UI: Il pannello di "Attenzione" scompare dinamicamente se non ci sono criticità rilevate, lasciando spazio a feedback positivi.
    • Quick Navigator: Cliccando su una materia insufficiente, l'app ti porta istantaneamente al calcolatore di quella specifica materia.

    v0.19.0 (Hierarchy & Scroll Fix)

    Stabilità Strutturale del Layout

    • Layout DOM Fix: Risolto un bug critico di annidamento HTML che causava il blocco dello scorrimento e la scomparsa della navigazione mobile.
    • Recovery System: Ripristinata la corretta chiusura dei contenitori `app-screen` e `views-container`.
    • Safe-Area Scrolling: Ottimizzata l'area di scorrimento per evitare che i contenuti finiscano sotto la barra di navigazione.

    v0.18.0 (Security & Stealth)

    Bypass Firewall Mastercom

    • Browser Impersonation: Implementata mimetizzazione avanzata degli header per bypassare i controlli IP dei datacenter.
    • Dynamic Form Scraping: L'app ora estrae dinamicamente campi nascosti (db_key, login_ts) dal form ufficiale di Mastercom al momento del login.
    • Anti-Bot Resilience: Ridotto il rischio di blocchi temporanei durante la sincronizzazione massiva dei dati.

    v0.17.0 (Vercel Core Persistence)

    Logica Server-Side per il Cloud

    • Redis/KV Integration: Configurato il supporto backend per Vercel Storage, garantendo sessioni fluide.
    • Session Security: Implementate cookie policy SameSite=None e Secure per mantenere l'utente loggato anche su PWA.
    • Async Optimization: Rimozione del threading lato server a favore di una gestione delle richieste asincrona più leggera.

    v0.16.0 (Battle Mode Expansion)

    Competizione Sociale Anonima

    • Certificate Generator: Aggiunta funzione per scaricare o stampare un attestato di vittoria personalizzato dopo lo scontro.
    • Social Link: Ottimizzata la condivisione del proprio codice sfida per velocizzare il confronto tra compagni.
    • Privacy Engine: I dati condivisi per il confronto sono criptati e anonimizzati per garantire la massima riservatezza.

    v0.15.0 (Confronta Voti - Battle Mode)

    Dati vs Dati nel Massimo Hype

    • Scontro Animato: Nuova interfaccia "Battle" per sfidare i voti dei tuoi amici tramite codici univoci.
    • Round Statistici: Confronto round-per-round su Media, Numero Voti, Picchi di Eccellenza e Radar Chart finale.

    v0.14.0 (Global Registry Support)

    Espansione Oltre lo Standard

    • Multi-School Engine: Supporto per la configurazione dinamica di diverse scuole tramite file `school_registry.json`.
    • Automatic Proxy: Inserita logica di rilevazione del database corretto in base all'istituto di appartenenza.

    v0.13.0 (API Core & Fallback AI)

    Stabilità Server & Resilienza

    • Auto-Repair Sync: Eliminata la concorrenza tra Thread. Riscritto il cuore del backend per interrogare il database in modo rigorosamente sequenziale, sconfiggendo i bug di corruzione chiave e i grafici vuoti.
    • Guardian API: Aggiunto un modulo "Safe Request" in grado di intercettare le desincronizzazioni e lanciare auto-login invisibili di salvataggio. Sessioni indistruttibili.
    • AI Auto-Discovery: Script Python adattivo che interroga a cascata gemini-2.5, 2.0 e 1.5 bypassando perennemente il famigerato errore Not Found 404 finché non trova un modello permesso alla tua chiave.
    • Conversione Voti: Algoritmo nativo di trasformazione per simboli voti pre-grafico (I voti come "7½" e "8+" diventano float puliti, 7.5).

    v0.12.0 (AI Strategist Overhaul)

    Dalla Chat all'Analisi Automatica Premium

    • Addio Chat Universale: Rimossa la chat bot interattiva. Ora entra in campo la scheda "Analisi Tattica JSON" calibrata esclusivamente in base ai risultati personali dello studente.
    • Grafica Masterpiece: Nuovo elegante Overlay layer laterale composto da schede gerarchiche: Frase Motivazionale Iniziale (gradiente sfumato), Priorità Assoluta rossa, Aree Critiche e Strategia Didattica.
    • Visuals Intelligenti: Caricatore "Orb Pulse Aura" per l'attesa AI, ed UI Failure state a bottoni pronti a riconnettersi senza ricaricare la PWA.

    v0.11.0 (Notizie & Tweaks)

    Comunicazioni & Esperienza Utente

    • Notizie (Alpha): Inserimento iniziale della scheda Notizie per visualizzare le comunicazioni interne d'istituto.
    • UI Toolbar: Ridotta la dimensione e la visibilità del pulsante AI su mobile per non distrarre la navigazione generale.
    • Sorpresa Segreta: La modalità divertimento è stata nascosta... cerca tra i meandri del registro!

    v0.10.0 (Agenda & Logic Polish)

    Ottimizzazioni Logiche & Qualità di Vita

    • Smart Agenda Headers: L'intestazione dei giorni in Agenda ora aggregate in modo dinamico e corretto, scrivendo "1 COMPITO" o "2 VERIFICHE" invece di un generico "EVENTO".
    • Pulizia Visiva: Rimozione del badge colorato ricorsivo interno alla card dell'Agenda, dato che il bordo trasmette già l'informazione del tipo di evento.
    • Triplo Ordinamento Voti: Riscritto il motore del pulsante "Ordina" nella vista Voti; ora agisce come uno switch ciclico per ordinare i voti al volo per (Data cronologica, Voto Crescente, Voto Decrescente).
    • Cleanup: Eliminato un tasto ridondante e non funzionante dalla toolbar dei voti.

    v0.9.0 (Graph & Dashboard Engine)

    Grafici Perfetti su Mobile

    • Anti-Scale Engine (Chart.js): Tutti i grafici su mobile (Andamento Voti, Medie per Materia) ora mantengono nativamente le proporzioni corrette permettendo uno scrolling laterale fluido, senza "schiacciarsi" o sfocarsi verticalmente o orizzontalmente.
    • Risorse Assenze Fixate: Il testo "25%" indicante il limite assenze rischiava di compenetrarsi in header su dispositivi stretti: l'ho ancorato rigidamente *sotto* l'interfaccia.
    • Label Giustificate Messa in Riga: Il badge di fondo "Tutte giustificate" è stato ripristinato al normale flusso HTML per evitare spiacevoli sovrapposizioni visive di testo sulla card.

    v0.8.0 (Mobile Tables Refactor)

    L'Esperienza Native su Mobile

    • Voti Redesign: Dismesso l'impilamento forzato (Flex Column); la tabella su mobile posiziona intelligentemente e parallelamente le nature del voto, lasciando grande spazio alla Data ed alla Materia.
    • Voto Chip Giganti: Gli indicatori principali dei voti (i quadrati arrotondati contenenti il numero es. "6") non si rimpiccioliscono più microscopicamente a 32px, ristabiliti ai comodi "44px" originali migliorando nettamente la sensazione di Touch (UI/UX).
    • Assenze Re-Layout: Stessa formula per le assenze su telefono: gerarchia giorno/data ristabilita, etichette "Tipo" e "Stato" piazzate in linea ed ingrandite, con un chip delle ore marcato per immediata evidenza.

    v0.7.0 (Chaos & AI Interface)

    Interazione Utente & Modalità Chaos

    • AI Smart Placement: Il tasto IA su mobile è stato spostato nella topbar per non coprire i contenuti in basso.
    • Marco Le Palle Mode: Introdotta la "Meme Mode" con scuotimento UI, colori psichedelici e dati casuali (Modalità Sistema).
    • Profile containment: Risolto l'overflow delle foto profilo, ora perfettamente circolari e contenute.
    • Adaptive Menu: Transizioni più fluide per il menu "Altro" e chiusura automatica dopo la selezione.

    v0.6.0 (Data & Navigation)

    Struttura Voti e Nuova Navigazione

    • Grades Card-View: Rivoluzionata la tabella voti su mobile: trasformata in una lista di schede eleganti con voto in evidenza.
    • Bottom Menu v2: Riorganizzata la barra mobile con le 5 icone principali + tasto "Altro" espandibile.
    • Responsive Tables: Tutte le tabelle ora nascondono intestazioni ridondanti su mobile per massimizzare la lettura.
    • Subject Handling: Migliorata la visualizzazione dei nomi materie lunghi nelle barre di progresso.

    v0.5.0 (Mobile Optimization)

    Densità Informazioni & Leggibilità

    • Density Boost: Ridotta la dimensione base dei font del 12% su mobile per mostrare più dati contemporaneamente.
    • Compact KPI: Rimpicciolite le icone e i valori della dashboard per evitare scroll eccessivi su smartphone.
    • Sidebar improvements: Aggiunto troncamento intelligente dei nomi per evitare rotture del layout con nomi lunghi.
    • UI Polish: Ridotti margini e padding nelle sezioni principali per un look più moderno e compatto.

    v0.4.0 (Professional PWA)

    Rivoluzione Design PWA & AI Intelligence

    • PWA Support: EduTrack è ora installabile su Android e iOS come app nativa con supporto offline avanzato (Service Worker v3).
    • Design Overhaul: Introdotto il tema "Light Flat Professional". Eliminati i bagliori neon e i gradienti per una veste grafica premium e asciutta.
    • Dashboard Smart: Aggiunti nuovi widget dinamici per gli "Ultimi Voti" e i "Compiti Imminenti".
    • EduTrack AI: Integrato assistente IA intelligente con accesso a voti, argomenti e agenda per suggerimenti di studio personalizzati.
    • Esperienza Native App: Supporto completo alle "Safe Areas" (notch dei cellulari) e icone HD personalizzate per la home screen.
    • Timeline Pulita: Rimossa la ridondanza della data nel calendario timeline, lasciando solo il giorno della settimana per una lettura rapida.

    v0.3.0

    Interfaccia Native App e Fix CSS

    • Riprogettata intera interfaccia mobile per sembrare un'app nativa con Bottom Navigation bar in vetro (glassmorphism).
    • Diviso il massiccio file style.css (~2000 righe) in file CSS modulari e più facilmente gestibili (base, layout, components, views).
    • Aggiornati font e ridimensionati pulsanti per miglior supporto al touch.
    • Risolti problemi di calcolo matematico sulle percentuali del tracker delle assenze.
    • Introdotto il check dell'orario leggendolo dalle descrizioni su ore di ritardo e uscita.
    • Aggiunta etichetta "Alpha" al caricamento nell'interfaccia di Login.
    • Rinominate diciture da "Assegnazione" a "Compito" nell'agenda e in timeline.
    • Aggiunta la pagina Changelog per tracciare il diario di sviluppo.

    v0.2.0

    Nuovo Calcolatore Assenze e Timeline

    • Creata un'interfaccia a schede interattive (KPI) per Assenze, Ritardi, Uscite e Giustifiche.
    • Aggiunto un calcolatore intelligente di ore assenza (6h giorni standard, 8h al Giovedì).
    • Inserita la Progress Bar che traccia il raggiungimento della soglia bocciatura (25%).
    • Convertita la visualizzazione "Lavagna Kanban" dei compiti in una magnifica Timeline interattiva ordinata per giorno.
    • Persistenza lato client: introdotto il sistema per flaggare un compito come completato salvandolo in memoria cache del dispositivo.
    • Aggiunte scorciatoie per filtrare tra tipi di compito assegnati (Studio vs Esercizi scritti).

    v0.1.0

    Primo Rilascio Base

    • Integrazione principale con il database scolastico via web scraping Python.
    • Struttura dati: Voti, Agenda, Compiti, Note e Assenze.
    • Introdotte le macro-sezioni base e la logica di login col portale API.
    • Implementato il salvataggio automatico delle API Key nella local session così che l'app le ricordi a ogni avvio.
    • Integrazione Chart.js per monitoraggio progressi e Medie Materie.

    Personalizza Interfaccia

    Tema di Base

    Colore d'Accento

    Tema Dinamico

    Il colore d'accento cambierà in base alla tua media scolastica per riflettere il tuo andamento.

    Modalità Dinamica Disattivata

    Notifiche Push

    Ricevi avvisi in tempo reale per nuovi voti, compiti, agenda e circolari.

    Stato: Non attive

    Monitoraggio Avanzato

    Analisi completa del tuo rendimento scolastico

    Media Globale
    --
    Trend Mese
    --
    vs mese prec.
    Materia Top
    --
    media più alta
    A Rischio
    0
    materie <6
    Voti Totali
    0
    nel periodo
    Proiezione
    --
    fine anno stimato

    Simulatore Voti

    Simula più voti e modifica quelli esistenti per vedere come cambia la tua media

    Voti da simulare
    Modifica esistenti
    Seleziona una materia
    Media attuale
    --
    Nuova media
    --
    Variazione
    --
    6.00

    Calcolatore Obiettivo

    Scopri quanti voti ti servono per raggiungere una certa media

    🎯 Voglio arrivare a
    Seleziona una materia per vedere i calcoli

    Andamento Voti

    Distribuzione Voti

    S

    Studente

    EduTrack Agnelli

    EduTrack AI

    Assistente Scolastico
    EduTrack

    Il tuo
    Anno Wrapped

    Scopri tutto quello che hai vissuto quest'anno scolastico, in un colpo solo.

    Tocca per continuare
    I tuoi voti
    0

    Voti ricevuti
    quest'anno

    0 positivi
    0 negativi

    Sei un vero studente!

    Media generale
    0.00 su 10

    Il tuo rendimento complessivo

    —Voto più alto
    —Voto più basso
    La tua materia forte
    🏆
    —
    —di media

    Eccellente in questa materia!

    Da migliorare: — (—)
    Escluse Ed. Fisica e Civica
    Le tue assenze
    0

    Giorni di assenza

    0 ritardi
    0 uscite
    Circa 0 ore di lezione mancate

    Ogni lezione conta!

    Argomenti e compiti
    0

    Argomenti trattati
    in classe

    0compiti assegnati
    0attività di studio

    Una mente sempre al lavoro!

    Note disciplinari
    0

    Note ricevute quest'anno

    🏴‍☠️
    Fenomeno Immortale
    26+ note
    ⚡
    Monumento Scolastico
    21–25 note
    💀
    Maestro del Caos
    16–20 note
    🔥
    Leggenda del Corridoio
    11–15 note
    😈
    Ribelle in Formazione
    6–10 note
    🕊️
    Osservato Speciale
    1–5 note
    👻
    Fantasma
    0 note

    Il comportamento fa parte del percorso!

    Classifica materie

    Le tue top materie

    🎉

    Ottimo lavoro!

    La costanza è la chiave per il successo. Continua così!

    0Voti
    0.0Media
    0Materie
    Anno Wrapped 2025/2026
    🎉
    Studente
    ⭐
    0
    Voti ricevuti
    📊
    0.00
    Media generale
    🏃
    0
    Assenze
    📚
    0
    Argomenti
    🏆 Materia forte
    —
    —
    Continua così!

    Come è nato EduTrack

    Dietro le quinte • 120+ commit di sviluppo e reverse engineering

    Dal 13 Marzo 2026 a Oggi 100% Indipendente & Privacy First

    Un viaggio di ingegneria del software nato sui banchi di scuola

    EduTrack nasce da un'esigenza reale: avere un registro elettronico veloce, elegante, moderno e privo di attriti. Attraverso oltre 120 commit su Git, il progetto è evoluto da un semplice script di scraping a una Progressive Web App completa con intelligenza predittiva, notifiche push e supporto nativo per Android.

    120+
    Commit Git
    6 Mesi
    Sviluppo Costante
    <0.1s
    Avvio da Cache
    7
    Moduli & Eventi Push

    Fase 1: La Scintilla & Reverse Engineering

    Marzo 2026 • Commit dfd4a18 → 72065ac

    Il registro ufficiale Mastercom presentava tempi di caricamento lunghi, un'interfaccia non adatta ai telefoni e sessioni che scadevano di continuo. Il progetto è iniziato analizzando il traffico HTTP: decifrare il meccanismo di autenticazione basato su parametri non documentati (current_key, current_user, db_key) e multipart form-data.

    Fase 2: Intelligenza Predittiva & Apple Design System

    Aprile 2026 • Commit 83544b0 → 786779e

    L'obiettivo è diventato trasformare i semplici numeri in strumenti utili per lo studio. Viene creato il Simulatore di Voti (che calcola matematicamente quale voto serve prendere per raggiungere l'obiettivo prefissato) e il modulo Confronta Voti. L'interfaccia viene completamente riprogettata ispirandosi al design pulito di iOS/macOS con blur glassmorphism.

    Fase 3: EduTrack Wrapped & Monitoraggio

    Maggio 2026 • Commit bb62834 → e725822

    Nasce EduTrack Wrapped: un'esperienza interattiva annuale in stile Spotify Wrapped che analizza tutti i dati scolastici dell'anno (voto più alto, materia preferita, assenze, andamento temporale, badge divertenti) con animazioni e download istantaneo della card in HD. Viene introdotto il modulo di Monitoraggio con grafici temporali e distribuzione dei voti.

    Fase 4: Il Traguardo della Versione 1.0 Stabile

    Giugno - Luglio 2026 • Commit 156d83e → 8546983

    Viene rilasciata la Versione 1.0 Stabile. EduTrack diventa una piattaforma scolastica completa a 360°: sincronizzazione delle circolari e comunicazioni con allegati, agenda compiti, orario settimanale con aule e professori, assenze, ritardi e note disciplinari. Resilienza di rete rinforzata con fallback automatico e persistenza delle sessioni per 365 giorni.

    Fase 5: Notifiche Push, S3 Proxy & APK Android Nativo

    Agosto 2026 • Commit 2f9ba16 → Oggi

    Il coronamento del progetto: introduzione di un motore di background cron diffing che rileva nuovi voti, compiti, circolari, assenze o note e invia notifiche push istantanee via OneSignal anche ad app chiusa. Risoluzione della crittografia dei download S3 di Mastercom e preparazione completa come PWA Standalone e APK nativo Android tramite Trusted Web Activity (TWA).

    Backend Python & Flask

    Un'architettura leggera e asincrona in Python 3.12 con Flask. Gestisce il pool di sessioni HTTP persistenti, l'interazione con Mastercom e la logica di crittografia e diffing.

    Vanilla JS ad Alte Prestazioni

    Nessun framework pesante (React, Vue o Angular). Tutto il frontend è scritto in JavaScript puro per garantire un caricamento istantaneo in meno di 100ms e zero consumi di batteria.

    Cache Ibrida SQLite + LocalStorage

    Strategia Stale-While-Revalidate: l'applicazione si avvia all'istante mostrando l'ultima istantanea memorizzata e sincronizza le novità in background senza interruzioni.

    Motore Push OneSignal & Cron

    Un cron job automatico esegue il diffing crittografico dei dati utente ogni pochi minuti e inoltra notifiche push su smartphone e computer tramite OneSignal REST API v2.

    Visualizzazione Dati con Chart.js

    Radar di competenze, grafici di andamento temporale, curve di crescita e distribuzione dei voti renderizzati su canvas HTML5 ad alta risoluzione con gestione automatica del ciclo di vita.

    Trusted Web Activity & PWA

    Compatibilità completa per l'impacchettamento in APK Android nativo: icone maskable, manifest standardizzato e Service Worker per la navigazione fluida offline.

    1. Il Bug S3 SignatureDoesNotMatch di Mastercom

    Il Problema: Quando si scaricava una circolare, Mastercom generava un link S3 con firma HMAC valida e poi accodava la stringa &visualizza_app=1, invalidando la firma crittografica di AWS/OVH S3 e causando un errore 403.

    La Soluzione: È stato creato l'endpoint /api/notizia/download che rimuove con espressioni regolari i parametri non firmati e agisce da proxy di streaming autenticato in tempo reale, consentendo il download istantaneo del PDF con il nome originale.

    2. Il Loop di Ricaricamento dei Service Worker su Mobile

    Il Problema: Su dispositivi mobili l'app si ricaricava 3 o 4 volte da sola all'avvio a causa di un conflitto tra il worker della PWA (/sw.js) e quello di OneSignal (/OneSignalSDKWorker.js) che si contendevano lo scope.

    La Soluzione: Unificato l'intero stack in un solo Service Worker condiviso che importa l'SDK OneSignal e rimosso il listener aggressivo su visibilitychange, garantendo un'esperienza ultra-stabile senza alcun ricaricamento forzato.

    3. Persistenza Permanente della Sessione (365 Giorni)

    Il Problema: Le sessioni Mastercom scadono dopo pochi minuti di inattività, costringendo gli studenti a reinserire password e codici complessi.

    La Soluzione: Implementato un layer di autenticazione silenziosa e sicura: se il token scade, EduTrack esegue un re-login trasparente in background tramite session pooling senza che l'utente debba mai digitare di nuovo le proprie credenziali.

    La Visione Dietro EduTrack

    "La scuola dovrebbe essere un luogo in cui la tecnologia semplifica la vita degli studenti invece di complicarla. EduTrack è nato come una sfida personale di sviluppo ed è diventato uno strumento quotidiano per centinaia di studenti dell'Istituto Internazionale Edoardo Agnelli. Non ci sono aziende dietro, nessun interesse commerciale, solo passione pura per la programmazione e per il design ben fatto."

    Privacy Assoluta

    Nessun dato personale o scolastico viene ceduto a terzi. Le credenziali viaggiano criptate e la comunicazione avviene unicamente tra il tuo dispositivo e i server dell'Istituto.

    Efficienza Energetica

    Grazie a un'architettura priva di librerie pesanti e a un sistema di cache a 3 livelli, l'applicazione consuma meno del 1% della batteria di un telefono durante l'intera giornata scolastica.

    EduTrack • Creato con passione per l'Istituto Internazionale Edoardo Agnelli di Torino