In un pomeriggio domenicale, il geek in me ha preso il sopravvento e ha deciso di colleare il mio account Garmin a Claude per creare una dashboard di allenamento costruita sulle mie domande, non su quelle di un’app e …. senza scrivere una riga di codice!!!
Nuoto in piscina e in acque libere, cammino, faccio yoga !
Garmin Connect registra tutto, ma ogni schermata risponde a una domanda generica.
Io ne ho di molto precise: sto diventando più veloce in acqua? Sto recuperando abbastanza? Il peso va nella direzione giusta?
Volevo una pagina sola che rispondesse a queste domande, con i miei dati, e che restasse sul mio computer.
La chiave ufficiale di Garmin
Garmin offre una Personal API: una chiave personale che dà accesso ai propri dati, in sola lettura.
Niente librerie non ufficiali, niente password salvate in giro.
La chiave si crea in Garmin Connect, nella pagina Personal API Key, con una scadenza a scelta.
Viene mostrata una sola volta e ne può esistere una sola attiva.
Con la chiave si ottiene un token che dura 24 ore, e con il token si leggono attività, riepiloghi giornalieri, sonno, HRV, peso, età fitness e zone cardio.
Sola lettura significa che nessuno script può modificare o cancellare nulla nel mio account.
Un passo alla volta, senza scrivere codice
Ho usato Claude in modalità Cowork, collegato al mio Mac.
Prima ho scritto le istruzioni una volta sola e le ho salvate come skill, così posso riusarle.
Poi Claude mi ha guidato in sette passi, fermandosi ogni volta che serviva qualcosa da me.
- Progetto: Claude ha creato la cartella, verificato Python e preparato i file di configurazione.
- Chiave: Ho creato la chiave su Garmin Connect seguendo le istruzioni, per poi copiarla nel file giusto.
- Test: un comando nel Terminale ha mostrato le mie ultime cinque attività. Connessione funzionante 🙂
- Domande: obiettivo, sport, stile grafico, unità di misura, numeri che guardo di più.
- Download: 12 mesi di storia in circa un minuto.
- Dashboard: un unico file HTML che si apre nel browser.
- Aggiornamento: un solo comando scarica le novità e ricostruisce tutto.
Il mio lavoro è stato copiare una chiave e incollare due righe nel terminale, il codice l’ha scritto e controllato Claude.
Le regole d’oro: chiave e dati restano a casa
Sono dati di salute, quindi ho fissato poche regole chiare fin dall’inizio.
- Sola lettura: nessuna chiamata che modifichi il mio account.
- La chiave non passa dalla chat: la incollo io in un file sul Mac. Claude controlla solo che ci sia, senza mai leggerla o mostrarla.
- Tutto in locale: chiave, dati scaricati e dashboard restano sul mio computer, esclusi da qualsiasi caricamento online.
- Niente cloud aziendale: avevo chiesto di mettere il progetto in Documenti, ma Claude mi ha fatto notare che sul mio Mac quella cartella è sincronizzata con OneDrive. Abbiamo scelto una cartella solo locale.
Anche il backup che tengo su Dropbox contiene solo il codice, mai la chiave né i dati.
Cosa c’è nella dashboard
Ogni grafico risponde a una domanda che mi faccio davvero. Lo stile è pulito e chiaro, come un diario di allenamento, e funziona anche sul telefono. Passando sopra un grafico vedo i valori esatti del giorno o della settimana.
| Sezione | La domanda | Cosa mostra |
|---|---|---|
| Verso l’obiettivo | Sto andando nella direzione giusta? | Peso, passo in piscina, km in acque libere, volume di nuoto |
| Salute | Come sto oggi rispetto al solito? | HRV, FC a riposo, sonno, carico, Body Battery, età fitness |
| Questa settimana | Mi sto allenando come al solito? | Km, ore e sessioni per sport, ultime 16 settimane |
| Tendenze | Cosa sta cambiando nei mesi? | HRV con la fascia personale, FC a riposo, fasi del sonno, carico, stress |
| Nuoto | Sto diventando più veloce? | Passo per 100 m di ogni nuotata, km al mese |
| Record | Qual è il mio meglio? | Nuotate più lunghe, passo migliore, giornate più impegnative |
Cosa mi hanno detto i miei dati
In un anno: 700 attività, 366 notti di sonno e HRV, 19 uscite in acque libere. Vederli tutti insieme ha cambiato la mia lettura.
- Recupero: in questo periodo l’HRV notturna è sotto la mia fascia abituale e la FC a riposo della settimana è sopra la media del mese. Due segnali che, insieme, chiedono un po’ più di riposo.
- Velocità in acqua: il passo medio in piscina è intorno a 1:58 ogni 100 m, con un miglior risultato di 1:35 su almeno un chilometro. Ora posso seguirlo nuotata dopo nuotata.
- Acque libere: la nuotata più lunga è stata di 3,64 km. È il punto di partenza per le gare.
- Peso: solo 7 pesate in un anno sono troppo poche per seguire un obiettivo. La prima cosa da cambiare non è l’allenamento, ma l’abitudine di salire sulla bilancia.
Aggiornarla e portarla con sé
Dopo un allenamento basta un comando: scarica solo le novità, ricostruisce la pagina e la apre. La chiave dura un anno, poi se ne crea una nuova in due minuti.
Se cambio computer, copio la cartella del progetto, installo Python e rilancio lo stesso comando. Su Windows c’è un file equivalente con doppio clic.
In conclusione
Non serve essere programmatori per avere i propri dati in una forma utile.
Serve sapere quali domande farsi e avere un assistente che traduca quelle domande in codice, rispettando le regole che decidiamo noi.
La mia prossima domanda per la dashboard è già pronta: quanti giorni mancano alla prossima gara in acque libere?
