7Running
Il piano di allenamento per la corsa, creato su misura dall'AI
Incasso mensile: 400 USD (fonte indicata nella scheda)
Cosa fa
L'utente indica il suo livello e l'obiettivo (5 km, 10 km, mezza maratona, una data di gara) e riceve un piano settimana per settimana, con gli allenamenti di ogni giorno.
Come guadagna
Ha entrate ricorrenti ogni mese, verificate su TrustMRR. Prezzi e piani esatti sono indicati sul sito del progetto.
Rendilo tuo
- Collegalo alle gare italiane: scegli la tua maratona dal calendario e il piano si adatta alla data.
- Piani per altri sport di resistenza: bici, nuoto, camminata veloce per chi inizia.
Le frasi da scrivere all'AI
1. Base del sito e grafica
Crea un'app web in italiano chiamata "Corri Meglio": crea un piano di corsa settimana per settimana verso un obiettivo (5 km, 10 km, mezza maratona, una gara con data) con ritmi personalizzati, e lo adatta in base agli allenamenti fatti. Usa React, Vite, TypeScript e Tailwind CSS.
Pagine da creare:
1. Pagina iniziale con un esempio di piano e prezzi
2. Registrazione e questionario: livello, tempo su 5 km se lo sai, giorni disponibili, obiettivo e data
3. Il piano della settimana con l'allenamento di oggi
4. Scheda dell'allenamento con riscaldamento, parte centrale e ritmi
5. Progressi e storico
Stile: sportivo e motivante: sfondo bianco, arancione #F97316, blu notte #1E293B, verde #22C55E per gli allenamenti fatti, carattere "Barlow", calendario a righe settimanali. Nessuna immagine generica di stock.
Tutto deve funzionare perfettamente da telefono. Tutti i testi in italiano, chiari e senza parole tecniche.
2. Database, account e sicurezza
Collega il progetto a Supabase e attiva la registrazione con email e password.
Crea queste tabelle:
- "corridori": livello, tempo sui 5 km, giorni disponibili, obiettivo, data della gara, uno per utente
- "settimane": numero, allenamenti in JSON con tipo, distanza o durata e ritmo
- "corse_fatte": allenamento, distanza, tempo, sensazione (da 1 a 5), note
Regole di sicurezza obbligatorie:
- ogni utente vede solo i suoi dati
- il piano non si modifica dal browser
Usa esattamente il codice SQL che trovi nei "Dettagli tecnici" di questa scheda: eseguilo nel SQL Editor di Supabase prima di continuare, poi collega le pagine alle tabelle.
3. Ritmi e piano
Dal tempo sui 5 km (o da una stima dal livello) si calcolano i ritmi di allenamento: facile, medio, soglia, ripetute, e il tempo previsto sulla distanza obiettivo con la formula di Riegel (codice nei Dettagli tecnici).
La Edge Function "piano" chiede a Claude il piano completo in JSON, settimana per settimana fino alla gara: aumento graduale (non oltre il 10% a settimana), una settimana di scarico ogni 3–4, e le ultime 1–2 settimane di riduzione prima della gara. Ogni allenamento ha riscaldamento, parte centrale con ritmi e defaticamento.
Avviso: "Se hai dolori o problemi di salute, parla con un medico prima di iniziare".
4. Adattare il piano
Dopo ogni corsa l'utente segna distanza, tempo e sensazione. Se salta due allenamenti o segna più volte "molto faticoso", alla fine della settimana il sito propone di alleggerire la settimana successiva (con una nuova richiesta a Claude).
Progressi: chilometri per settimana, ritmo medio sul facile, allenamenti completati in percentuale. Esportazione del piano nel calendario del telefono (file .ics).
5. Pagamenti con Stripe
Aggiungi un abbonamento a 4,99 € al mese. Gratis l'utente ha: piano di 2 settimane per i 5 km. Con il piano Pro sblocca: tutte le distanze, piano completo fino alla gara, adattamento automatico e calendario.
A pagamento riuscito il webhook porta l'utente al piano Pro; se l'abbonamento viene disdetto o non rinnovato lo riporta al piano gratuito.
Per la sessione di pagamento e il webhook segui la guida "Pagamenti con Stripe" di Fattibile.
6. Controlli specifici di questo progetto
Oltre ai controlli della guida "Controllo finale", verifica in particolare:
1. Sicurezza: crea un piano per una mezza maratona tra 5 settimane partendo da principiante: il sito deve avvisare che il tempo è troppo poco e proporre un obiettivo più adatto.
Correggi quello che non va e scrivimi cosa hai cambiato.
Dettagli tecnici
Ritmi e tempo previsto
Dal tempo sui 5 km calcola i ritmi di allenamento e prevede il tempo su altre distanze con la formula di Riegel (T2 = T1 × (D2/D1)^1,06).
// Tempo previsto su un'altra distanza (formula di Riegel)
export function tempoPrevisto(secondi5k: number, km: number): number {
return secondi5k * Math.pow(km / 5, 1.06);
}
// Da secondi a "4:52 /km"
export const ritmo = (secondiAlKm: number) =>
Math.floor(secondiAlKm / 60) + ":" + String(Math.round(secondiAlKm % 60)).padStart(2, "0") + " /km";
// Ritmi di allenamento indicativi, partendo dal ritmo gara sui 5 km
export function ritmiAllenamento(secondi5k: number) {
const gara5k = secondi5k / 5;
return {
facile: ritmo(gara5k * 1.25) + " - " + ritmo(gara5k * 1.35),
medio: ritmo(gara5k * 1.12),
soglia: ritmo(gara5k * 1.05),
ripetute: ritmo(gara5k * 0.97),
};
}
// Esempio: 5 km in 25:00 -> 10 km previsti in circa 52:07, mezza in circa 1:55:00
// tempoPrevisto(1500, 21.0975) ≈ 6905 secondiIstruzioni per l'AI: piano
La Edge Function che crea il piano. Nella "richiesta" il sito mette il profilo del corridore e i ritmi calcolati. Con l'abbonamento, al posto dei crediti si controlla il piano dell'utente. Il resto della funzione (accesso, crediti, rimborso se l'AI rifiuta) è uguale per tutti i progetti: è nella guida "Chiamare l'AI dal server".
Sei un allenatore di corsa. Crea un piano dalla data di oggi alla gara, adatto al livello, ai giorni disponibili e ai ritmi forniti. Regole: aumento del volume settimanale non oltre il 10%, una settimana di scarico ogni 3-4, riduzione nelle ultime 1-2 settimane, al massimo 2 allenamenti intensi a settimana. Se il tempo è troppo poco per l'obiettivo, dillo nel campo "avviso". Rispondi solo con JSON: {"avviso": null|"...", "settimane": [{"numero", "allenamenti": [{"giorno", "tipo", "riscaldamento", "parte_centrale", "ritmo", "defaticamento", "km_totali"}]}]}.
Pezzi comuni a tutti i progetti
- Pagamenti con Stripe
- Profili, piano e crediti
- Chiamare l'AI dal server
- Controllo finale prima di pubblicare
Glossario
- JSONB
- Un tipo di colonna che contiene dati strutturati flessibili, come un piccolo documento.
- Formula di Riegel
- Una formula usata dai runner per prevedere il tempo su una distanza partendo da quello su un'altra.
- Settimana di scarico
- Una settimana più leggera per far recuperare il corpo e assorbire l'allenamento.