Questa applicazione si pone come obiettivo quello di monitorare il numero di passi giornalieri registrati da un utente e mostrarli sotto forma di grafici per ricavarne dei report giornalieri, settimanali e mensili.
Landing.tsx: componente principale della nostra applicazione. Mostra un form in cui viene chiesto il numero di passi da impostare come obiettivo e la sorgente dei dati.Dashboard.tsx: pagina in cui vengono mostrati i dati giornalieri, settimanali e mensili dei passi registrati.Exercises.tsx: pagina in cui è possibile generare automaticamente una scheda di allenamento.Settings.tsx: pagina in cui è possibile modificare il numero di passi giornalieri impostati come obiettivo.History.tsx: pagina in cui è possibile visualizzare lo storico delle attività registrate (camminate, corse, sessioni di ciclismo).MonthlyStepsChart.tsxWeeklyStepsChart.tsxStepChart.tsx: componenti che mostrano dei grafici.MonthData.tsxWeekData.tsx: componenti che mostrano dei box con i dati mensili e settimanali registrati.ActivityCard.tsxCard.tsxChooseCard.tsxExerciseCard.tsxSidebar.tsx: componenti secondari utilizzati per migliorare la UI.
- L'applicazione si basa si dati statici caricati dall'utente nella prima pagina dell'applicazione.
- Il file dello storico delle attività è caricato automaticamente e in modo statico da un file
.csv. Sarebbe opportuno usare un datase costantemente aggiornato.
- Alessandro De Carli: VR500321
- Petrov Toni Emilov: VR500646
Tailwind CSS: per una stilizzazione più velocelucid-react: per l'utilizzo di iconedate-fns: per l'utilizzo di funzioni ottimizzate per le dateReactconTypeScript: per la struttura dell'interfaccia utenteVite: come bundler e ambiente di sviluppoPapaparse: per eseguire ilparsingdel file.csvcaricatorecharts: per la costruzione di graficirouter-dom: per la navigazioneeslintconglobals: aiuta con errori sintattici nel codice assieme ad alcune variabili globali predefiniteautoprefixer: serve per la compatibilità delle pagine su browser diversiaxios: serve per chiamate API. Nel nostro caso, serve per eseguire una GET per reperire il file di storico delle attività.
Per poter eseguire l'applicazione bisogna assicurarsi che innanzitutto si ha NodeJS installato sul proprio computer.
Per scaricare NodeJS si può seguire questo link oppure seguire i seguenti passaggi da terminale:
sudo apt update
sudo apt install -y nodejs npmUna volta installato per verificare che tutto è andato a buon fine, è consigliato eseguire questi comandi da terminale:
node -v
npm -vE' consigliato l'installazione di
NVMper una più semplice gestione dei pacchetti.
Prima di poter eseguire l'applicazione, occorre installare le dipendenze del progetto eseguendo questo comando tramite terminale nella cartella root:
npm installInfine per eseguire l'applicazione basta spostarsi tramite terminale nella directory del progetto e eseguire il comando
npm run devA questo punto, comparirà il link http://localhost:5173 che ci porterà nella prima pagina dell'applicazione.
In questa pagina, la prima ad essere mostrata all'utente, occorre inserire il file sorgente dei dati e il numero di passi da impostare come obiettivo giornaliero.