Changelog

Novità, correzioni e rilasci del sito.

per sviluppatori

Scheda tecnica

Com'è costruito questo sito: tecnologie, prestazioni misurate dal tuo browser e regole di sicurezza. Tutto pubblico, niente dati sensibili.

Riepilogo tecnico: sito statico generato con Astro, stili Tailwind CSS, animazioni GSAP con ScrollTrigger, modulo contatti in PHP con PHPMailer, server Apache. Nessun CMS e nessun database.

Primo byte (TTFB) –ms
Pagina pronta –ms
Richieste –file
Peso scaricato –KB

Valori letti ora dalla Performance API del tuo browser. Non vengono inviati da nessuna parte.

Dal codice al tuo schermo

Niente server che genera pagine a ogni visita: il sito viene compilato una volta e servito come file statici.

  1. 01

    Sorgente

    Componenti Astro e classi Tailwind, un layout condiviso per tutte le pagine.

  2. 02

    Build

    HTML statico, CSS e JavaScript minimizzati con nomi file a hash.

  3. 03

    Rilascio

    Ogni pubblicazione ha un numero di versione e una voce in questo changelog.

  4. 04

    Server

    Apache con HTTPS obbligatorio, intestazioni di sicurezza e cache dei file.

  5. 05

    Browser

    Il contenuto si legge subito; animazioni e interazioni arrivano dopo.

Sicurezza e standard

Le regole attive le puoi verificare da solo negli strumenti per sviluppatori del browser, scheda Rete.

Cosa è attivo

  • HTTPS obbligatorio con HSTS: il browser non usa mai la versione non cifrata.
  • Content-Security-Policy: script e connessioni solo da origini consentite.
  • Intestazioni di protezione: nosniff, Referrer-Policy, Permissions-Policy e blocco dell'incorporamento esterno.
  • Cookie e statistiche solo dopo il consenso, con un banner open source ospitato sul sito e Google Analytics caricato solo dopo il sì.
  • Modulo contatti protetto: controlli lato server e limite agli invii ripetuti.
  • Accessibilità: link per saltare al contenuto, focus visibile, rispetto di "riduci animazioni".
  • SEO tecnica: sitemap, URL canonici e dati strutturati JSON-LD.

Endpoint pubblici

Cosa resta privato. Credenziali, configurazione della posta, messaggi inviati dal modulo contatti, log e dettagli del server non sono pubblicati qui né raggiungibili dal browser. Hai trovato un problema di sicurezza? Scrivi tramite security.txt.

git log --serie

Rilasci

Serie 1.8 Scheda tecnica, analytics e allineamento
Aggiunte
  • 1.8.1: sezione per sviluppatori in questa pagina: terminale con stato live del sito, prestazioni misurate nel browser, percorso dal codice al browser, sicurezza, standard ed endpoint pubblici.
  • 1.8.1: animazioni GSAP che fanno prendere forma agli elementi (contorno disegnato, poi riempimento e contenuto) e linea dei rilasci che si disegna con lo scroll.
  • 1.8.1: con "riduci animazioni" attivo tutto resta fermo e subito leggibile.
  • 1.8.2: la sezione per sviluppatori ora si chiama "Scheda tecnica".
  • 1.8.3: in home la sezione principale prende forma all'apertura: griglia che si apre, badge, pillola e pulsanti disegnati a contorno e poi riempiti, sottolineatura sotto "Puglia" e linee di costruzione intorno al logo.
  • 1.8.4: logo della home ridisegnato in sequenza (cornice, poi < cuore / >) con un battito finale; tolte le linee di costruzione. Pulsanti con contorno più lento e visibile; la pillola ora si scrive davvero lettera per lettera. Corretti i tempi della sequenza.
  • 1.8.5: banner cookie iubenda sostituito da CookieConsent v3 (open source, gratuito, ospitato sul sito): Rifiuta con lo stesso peso di Accetta, nessuna casella pre-selezionata, scelta valida 6 mesi, link "Preferenze cookie" nel footer. Google Analytics ora si carica solo dopo il consenso (Consent Mode v2).
  • 1.8.5: nuova pagina /privacy con l'informativa del sito (la policy iubenda collegata prima non era più attiva) e registro anonimo dei consensi sul server, senza IP, cancellato dopo 12 mesi.
  • 1.8.6: nuova area clienti (/area-clienti) con Firebase: accesso con Google, email e password (con conferma dell'indirizzo) o numero di cellulare, invio delle richieste di preventivo e storico con lo stato aggiornato in tempo reale. I dati stanno in Cloud Firestore a Milano e ogni utente vede solo le proprie richieste.
  • 1.8.7: la pagina Contatti invita a usare l'area clienti per seguire lo stato della richiesta (il modulo classico resta, senza account). Le richieste inviate dall'area clienti arrivano anche via email, con la stessa conferma automatica per il cliente.
  • 1.8.8: pannello admin riservato per gestire tutte le richieste dell'area clienti: filtri per stato, ricerca, cambio stato, risposta visibile al cliente nel suo storico ed eliminazione. L'accesso è protetto dalle regole di Firestore, non solo dalla pagina.
  • 1.8.9: nell'header, su mobile e desktop, pulsanti rapidi per l'area clienti e il pannello admin. Su tablet la barra si compatta (solo icona per logo e tema) e non esce più dallo schermo.
  • 1.8.10: il pulsante del pannello admin nell'header è sempre visibile; l'accesso resta riservato all'account amministratore tramite le regole di Firestore.
  • 1.8.11: conversazione su ogni richiesta dell'area clienti, tra cliente e amministratore, con avviso via email a chi riceve il messaggio. Dal pannello admin, salvando un cambio di stato o una risposta, il cliente può essere avvisato via email; nuovo filtro «Da rispondere».
  • 1.8.12: nella conversazione delle richieste compaiono i tre puntini quando l'altra persona sta scrivendo, e la chat si può esportare in un file di testo. Nuovo messaggio di benvenuto con informazioni e richiesta di preventivo rapida, mostrato dopo la scelta sui cookie e non più di una volta ogni 30 giorni.
  • 1.8.26: hero iPhone — maschera allineata (baseline), niente testo SVG rosso sovrapposto; rimosso badge «modern static sites».
  • 1.8.25: titolo hero su mobile senza testo doppio (layout invisibile, video MP4 su iPhone, allineamento maschera corretto).
  • 1.8.24: titolo hero con effetto masked heading (video nella maschera, parole che compaiono in sequenza); rimossa la pillola «modern static sites · no-crm» sotto il sottotitolo.
  • 1.8.23: Google AdSense attivo solo dopo consenso «Pubblicità»; aggiornati banner cookie, privacy e ads.txt.
  • 1.8.22: pubblicazione documenti di nuovo sempre possibile; email cliente opzionale nel form (si compila da sola dalle richieste).
  • 1.8.21: corretta l’email di avviso quando pubblichi un documento (prima il server si fermava prima di inviarla).
  • 1.8.20: quando pubblichi un documento dal pannello admin, il cliente riceve anche un’email con il link (oltre alla notifica in area clienti).
  • 1.8.19: pannello admin a tutta larghezza sul desktop, con richieste su due colonne nei monitor grandi.
  • 1.8.18: pannello admin più chiaro: riepilogo in alto, filtri fissi, card prioritarie e layout clienti a due colonne.
  • 1.8.17: area clienti rinnovata: home del progetto, notifiche in-app, bacheca richieste, documenti e piano di manutenzione.
  • 1.8.16: sostituito il favicon.png sbagliato con il logo a cuore e usato lo stesso logo nelle email del sito.
  • 1.8.15: nel pannello admin puoi gestire i profili dei clienti (nome, sito e tipi di richiesta), con suggerimenti dagli account che hanno già scritto.
  • 1.8.14: aggiunto il nuovo tag Google del sito, che come Analytics parte solo dopo il consenso alle statistiche.
  • 1.8.13: profili per i clienti già seguiti: nell'area clienti vedono il proprio nome e solo i tipi di richiesta pensati per il loro sito (aggiornamento contenuti, nuove mete e gallerie, problemi tecnici, nuove funzionalità, dominio e hosting).
Modifiche
  • Serie di versione portata a 1.8 (nuovo giorno di lavoro).
  • Tag Google Analytics (gtag.js, G-3B9EX16GEJ) allineato allo snippet ufficiale, subito dopo <head>, una sola volta per pagina.
Serie 1.7 Interfaccia, dati e sicurezza
Aggiunte
  • Passando il mouse su un link interno compare un’anteprima della pagina, con dissolvenza.
  • Voce Changelog nel menu, con badge in stile sito developer.
  • Schema FAQ e catalogo prezzi per Google.
  • Articoli del blog con data, autore e tipo Article.
  • Lingua esplicita per i motori di ricerca (hreflang).
  • Controllo di salute del sito in /health, senza dati sensibili.
  • File security.txt per segnalazioni di vulnerabilità.
  • File humans.txt e llms.txt per persone e assistenti AI.
  • Manifest del sito (senza service worker, per non cambiare il look).
  • Percorso pagina (breadcrumb) per Google, senza modificare il layout.
Modifiche
  • Il changelog si apre per serie (1.8, 1.7, 1.6, 1.5, 0.x); dentro, i gruppi Aggiunte, Modifiche, Correzioni e Sicurezza.
  • I titoli delle serie usano il rosso del tema, anche in modalità scura.
  • Su touch e con “riduci animazioni” l’anteprima link non si attiva.
  • Menu: pagina corrente per i lettori di schermo; Escape chiude il menu mobile.
  • Con “riduci animazioni” i titoli appaiono subito, senza attesa.
  • Immagini fuori dall’header in caricamento ritardato; link esterni con rel sicuro.
  • Form contatti: errori per campo, messaggi dal server e invio senza doppio click.
  • Menu mobile: tasto Tab resta nel menu, il resto della pagina non è raggiungibile finché è aperto.
  • Form: errori visibili sotto il campo, con i colori già usati per l’esito.
  • Anteprima link: ritardo più lungo, si chiude con Escape e non parte sul menu touch.
  • FAQ: Escape chiude la risposta aperta.
  • “Torna su” e titoli animati rispettano “riduci animazioni”.
  • Piè di pagina e 404: landmark e percorso richiesto per i lettori di schermo.
  • Form: campi obbligatori dichiarati, lunghezza minima allineata al server, stato “invio in corso”.
  • Con “riduci animazioni” le animazioni di scroll e il tilt delle card restano ferme.
  • FAQ navigabili con le frecce; form: dopo un tentativo gli errori si aggiornano uscendo dal campo.
  • Tema chiaro/scuro come interruttore; pulsanti senza tipo e immagini senza alt sistemati.
  • Link esterni annunciano che si aprono in una nuova scheda; FAQ chiuse non restano nel flusso della tastiera.
  • /health indica la versione del sito, senza dati sensibili.
  • Oltre il limite di invii il form dice quando riprovare (Retry-After).
  • Menu mobile: Home e Fine saltano al primo e all’ultimo link.
  • Prefetch dei link del menu al passaggio del mouse, senza cambiare il look.
  • Menu mobile: frecce su/giù tra i link; su schermo piccolo è un dialogo con aria-modal.
  • Form: telefono dichiarato opzionale; errori collegati con aria-errormessage; lunghezze massime allineate al server.
  • Changelog: una sola serie aperta alla volta; messaggio con hint e invio con Ctrl+Invio.
  • Anteprima link: niente iframe su PHP/health/elements; si chiude al ridimensionare la finestra.
  • Anteprima anche sui link esterni: icona e dominio (Instagram, email social, iubenda), perché quei siti bloccano gli iframe.
  • Press: scala 0.97 in 160ms su menu, form, FAQ e changelog; niente flash grigio al tap.
  • Anteprima link: 200ms ease-out (curva Emil), dissolve più breve; messaggio form entra come toast.
  • Card 3D: perspective e tilt al passaggio del mouse (CSS che mancava al JS già presente); anteprima che si alza in prospettiva.
  • Stesso 3D con GSAP (power2.out, 200ms): follow del mouse sulle card, anteprima e toast del form.
  • ScrollTrigger: card, lavori e FAQ entrano in 3D allo scroll (una volta); pattern di sfondo in parallasse leggera. Niente pin, niente cambio colori.
  • Le card e i lavori “prendono forma” con clip-path; i titoli si svelano riga per riga; i CTA principali hanno un lieve richiamo magnetico al puntatore.
  • Home: mondo 3D WebGL (mare, colline, ulivi, paese) con camera pilotata dallo scroll. Senza video a pagamento; font e palette del sito invariati.
  • Home cinematografica: quattro clip aeree Mixkit (libere) scrubbate dallo scroll, letterbox e grain. Alternativa gratuita a Seedance.
  • Home: storia a scorrimento come nel video di riferimento (goccia che cade e diventa il sito), senza clip stock. Lo scroll pinna la scena; testi laterali a tempo. Mixkit rimosso dalla home.
  • Home: video fotorealistico (olio extravergine che si versa, Mixkit libero) scrubbato dallo scroll, come il caffè del video di riferimento. Niente canvas illustrato.
  • Rimossi hero video, mondo 3D, tilt GSAP e ScrollTrigger. La home torna al layout originale, senza animazioni 3D.
  • Di nuovo 3D sulle card e sui pacchetti (tilt al mouse), ingresso in prospettiva allo scroll, CTA magnetiche e logo con lieve rotazione. Niente video hero né mondo WebGL.
Sicurezza
  • Reindirizzamento HTTPS e HSTS.
  • Il form accetta invii solo dal sito, con limite di dimensione e pulizia dei campi.
  • Content-Security-Policy: script, font e iframe solo da origini fidati.
  • Il form non accetta più richieste da localhost.
  • Le librerie PHP non sono raggiungibili dal browser.
  • Niente interruzioni di riga nei campi usati nelle intestazioni email.
  • contact.php non viene indicizzato.
  • /security.txt reindirizza al file standard in .well-known.
  • Nome e categoria non possono contenere URL; file di test bloccato.
  • Risposte JSON in UTF-8 senza escape; javascript: e data: nei campi del form rifiutati.
  • Il form accetta solo JSON o form POST; JSON malformato rifiutato; massimo tre URL nel messaggio.
  • Retry-After indica i secondi reali; file .env, .bak, .sql e .log bloccati.
Serie 1.6 SEO, form e accessibilità
Aggiunte
  • Canonical e Open Graph distinti per ogni pagina.
  • Sitemap e robots aggiornati: rimosse pagine inesistenti e file tecnici.
  • Schema.org con il recapito corretto +39 334 799 5611.
  • Link “Salta al contenuto”, etichette su menu e tema scuro.
  • Pagina 404 in italiano, con noindex.
  • Cache e compressione per CSS, JS e immagini.
  • Testo alternativo sulle immagini Open Graph e Twitter.
  • Colore tema del browser allineato al blu del sito.
Modifiche
  • Il preventivo si invia con un pulsante nativo, anche da tastiera.
  • Esito del form annunciato agli screen reader.
  • Menu con etichetta e stato aperto/chiuso per i lettori di schermo.
  • Footer, menu mobile e toggle tema in italiano; licenza in italiano, voce “Elementi”.
  • CTA header “Preventivo”; changelog storico tradotto.
Correzioni
  • Il form contatti non punta più a localhost: le richieste arrivano a contact.php.
  • Validazione, honeypot anti-spam, limite di invii e CORS ristretto al dominio.
  • Link Area Clienti, Sign in e Sign up non finiscono più in 404.
  • Privacy collegata alla policy Iubenda.
Serie 1.5 Rilascio stabile
Aggiunte
  • Versione pubblica del sito vetrina WebLovePuglia.
Anteprime 0.x Prime anteprime
Aggiunte
  • Prima anteprima pubblica del sito.
Modifiche
  • Build più rapida e contenuti del sito vetrina arricchiti.
  • Rifinitura di layout, animazioni e dettagli visivi del template.

Siti statici moderni e soluzioni no-CRM per imprese in Puglia. WebLovePuglia.cloud

© 2026 WebLovePuglia. Rilasciato sotto licenza Unlicense.