AOS (Animate On Scroll), GSAP e ScrollMagic sono state per anni le librerie di riferimento per le animazioni web. Ma il panorama tecnologico cambia rapidamente, e oggi esistono alternative più leggere, performanti e native che rendono queste librerie sempre meno necessarie. In questo articolo confrontiamo le opzioni disponibili e ti aiutiamo a scegliere la soluzione migliore per il tuo progetto WordPress.
AOS (Animate On Scroll)
Versione: 2.3.4 | Peso: ~35KB minificato | Giudizio: 6/10
AOS è stata la libreria più popolare per animazioni scroll-driven in WordPress. Bastava aggiungere attributi HTML come data-aos="fade-up" e l”elemento si animava all”ingresso. Semplice ed efficace.
Pro:
- Estremamente semplice da usare, anche per non sviluppatori
- Documentazione chiara con molti esempi
- Plugin WordPress dedicati disponibili
Contro:
- Aggiunge 35KB di JavaScript al caricamento della pagina
- Non sfrutta le API CSS native dei browser moderni
- Impatta negativamente sui Core Web Vitals (LCP, TBT)
- Non ottimizzato per mobile
- Mantenimento rallentato (aggiornamenti poco frequenti)
GSAP (GreenSock Animation Platform)
Versione: 3.12 | Peso: ~50KB+ (con plugin) | Giudizio: 7/10
GSAP è il più potente motore di animazione JavaScript esistente. Permette di creare timeline complesse, animazioni sequenziali, interazioni basate su scroll e molto altro.
Pro:
- Potenza e flessibilità ineguagliabili
- Timeline avanzate per animazioni sequenziali
- Plugin ScrollTrigger per animazioni scroll-driven
- Performance migliori di altre librerie JS
Contro:
- Peso significativo (50KB+), anche per animazioni semplici
- Curva di apprendimento ripida
- Overkill per la maggior parte delle esigenze (fade-in, slide-up)
- License commerciale per uso professionale (Club GreenSock)
- Impatta TBT e LCP
ScrollMagic
Versione: 2.0.8 | Peso: ~20KB + dipendenze GSAP | Giudizio: 5/10
ScrollMagic permette di creare animazioni basate sulla posizione dello scroll con un”API pulita e flessibile. Purtroppo non viene più mantenuto attivamente.
Pro:
- API intuitiva per scene e trigger di scroll
- Buona integrazione con GSAP
- Leggero come libreria standalone
Contro:
- Non più mantenuto (ultimo aggiornamento: 2022)
- Dipende da GSAP per le animazioni effettive
- Compatibilità future incerta
- Community in declino
WOW.js
Versione: 1.1.2 | Peso: ~15KB | Giudizio: 4/10
WOW.js è un”altra libreria “vintage” che anima gli elementi all”ingresso. Molto semplice, ma anch”essa non più mantenuta.
Contro principali: non mantenuta, non sfrutta API moderne, performance scadenti su mobile, crea layout shift.
La nuova alternativa: CSS Scroll-Driven Animations
Peso: 0KB | Giudizio: 9/10
Le animazioni scroll-driven CSS (animation-timeline: view()) rappresentano l”evoluzione naturale delle animazioni web. Supportate nativamente da Chrome, Edge e Opera, offrono performance superiori senza JavaScript.
Pro:
- Zero JavaScript sui browser moderni
- 100/100 Lighthouse Performance
- Nessun impatto su LCP, TBT, INP, CLS
- Gestite dal browser su thread separato
- Sintassi dichiarativa, facile da imparare
Contro:
- Non supportate nativamente da Safari e Firefox
- Richiedono polyfill per compatibilità cross-browser
- Meno controllo di GSAP per animazioni complesse
Tabella comparativa completa
| Caratteristica | CSS Scroll-Driven | GSAP + ScrollTrigger | AOS | ScrollMagic |
|---|---|---|---|---|
| Peso (KB) | 0 | 50+ | 35 | 20+GSAP |
| Lighthouse | 100 | ~78 | ~85 | ~82 |
| JavaScript | No* | Si | Si | Si |
| Facilità | Alta | Bassa | Alta | Media |
| Flessibilità | Alta | Massima | Media | Alta |
| Compatibilità | Con polyfill | Universale | Universale | Universale |
| Manutenzione | Attiva | Attiva | Rallentata | Ferma |
* Zero JS su browser moderni. Polyfill automatico per Safari/Firefox.
La soluzione migliore per WordPress: CSS + Polyfill Progressivo
ClassyBlocks Pro combina il meglio di tutti i mondi: usa CSS scroll-driven nativo (zero JS, 100 Lighthouse) sui browser moderni e attiva automaticamente un polyfill JS leggero su Safari, Firefox e browser legacy. Il polyfill si attiva solo se CSS.supports('animation-timeline', 'view()') è false.
Il risultato è 151 animazioni in 12 pack, 100/100 Lighthouse sui browser moderni, compatibilità totale su tutti i browser, e zero configurazioni: si installa e funziona.



