← Livello 5 – Inventore

Lezione 3 di 8 ⏱ 35 minuti Premium

Meteo sul tuo sito web

Costruisci un bel widget con la previsione del weekend – utile per tutti e quattro i progetti.

Te lo mostro: trasformare i dati in un widget

Open-Meteo può anche dare una previsione per i prossimi giorni. Basta aggiungere cosa vuoi all’indirizzo:

https://api.open-meteo.com/v1/forecast?latitude=49.19&longitude=16.61&daily=temperature_2m_max,temperature_2m_min,weathercode&timezone=auto

Nella risposta troverai daily.time (una lista di giorni), daily.temperature_2m_max, e daily.temperature_2m_min (le temperature più alte e più basse). Stesso ordine = il primo giorno corrisponde alla prima temperatura.

Poi costruisci il widget in un ciclo:

<div id="pocasi" class="pocasi-widget"></div>

<script type="module">
  const adresa = 'https://api.open-meteo.com/v1/forecast?latitude=49.19&longitude=16.61&daily=temperature_2m_max,temperature_2m_min&timezone=auto';
  const data = await (await fetch(adresa)).json();

  const dny = data.daily.time;
  const max = data.daily.temperature_2m_max;
  const min = data.daily.temperature_2m_min;

  let html = '';
  for (let i = 0; i < 3; i++) {
    const den = new Date(dny[i]).toLocaleDateString('en-US', { weekday: 'long' });
    html += `<div class="den">
      <strong>${den}</strong>
      <span>${Math.round(min[i])}–${Math.round(max[i])} °C</span>
    </div>`;
  }
  document.querySelector('#pocasi').innerHTML = html;
</script>

E un po’ di CSS così sembra un widget vero:

.pocasi-widget {
  display: flex;
  gap: 10px;
}
.pocasi-widget .den {
  border: 1px solid #ddd;
  border-radius: 12px;
  padding: 12px 16px;
  display: flex;
  flex-direction: column;
  align-items: center;
}

Ora tocca a te 💪

Aggiungi un widget meteo dove ha senso nel tuo progetto:

🏫 Sito web scolastico – soluzione

Nella pagina eventi scolastici: “Meteo per la gita scolastica.” Imposta le coordinate sulla destinazione – bambini e genitori apprezzeranno sapere cosa mettere in valigia.

🙋 Sito web personale – soluzione

Nell’intestazione o nel footer: meteo nella tua città come tocco personale (“Oggi qui nella mia città ci sono 18 °C”).

🌍 Diario di viaggio – soluzione

Per ogni viaggio pianificato, un widget con la previsione alla destinazione. Cambia solo le coordinate per la località del viaggio.

⚽ Sito web del club – soluzione

Nella pagina partita: “Meteo per la partita di sabato.” Trova le coordinate del campo su una mappa. Bonus: se è prevista pioggia, mostra “Porta l’impermeabile!”

💡

Dove trovo le coordinate? Su un servizio mappe, clic destro su un luogo → “What’s here?” – le coordinate compariranno in alto.

Controllo: Il tuo sito web ha un widget con una previsione reale a 3 giorni, stilizzato per il tuo design. I dati si caricano live dall’API.

Cosa porti via da questa lezione