
Parole che si fondono
Testo, Scroll, SVG
NuovaGratis
Scorri dentro l’anteprima
L’intestazione di una bottega di chitarre inventata, nello stile ricco: scendendo, sul banco di lavoro davanti alla parete di pannello forato con gli attrezzi, una tavola di abete diventa una chitarra acustica. Il seghetto alternativo taglia il corpo lungo la dima e schizza segatura, la fresa intarsia la rosetta anello per anello, il manico di mogano entra e i tasti cadono uno alla volta, poi le meccaniche, il ponte e il battipenna, la verniciatura a sunburst e la lucidatura, le sei corde tirate fino alle meccaniche che girano; alla fine la chitarra suona e arriva il titolo. Le corde si pizzicano col puntatore o col dito.
Una cartella che funziona da sola: index.html, style.css, script.js e le librerie da CDN. Nelle schede React e Vue la stessa demo è già un componente, che spegne le sue animazioni quando esce dalla pagina.
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>The guitar built on scroll</title>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@fontsource-variable/fraunces@5.3.0/full.css">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@fontsource-variable/outfit@5.3.0/index.css">
<link rel="stylesheet" href="style.css">
</head>
<body>
<!-- a made-up guitar workshop, Halden Guitars. The stage sticks while you scroll: on the bench a spruce board is cut
into a body, the rosette is inlaid, the neck slides in and the frets drop one by one, the tuners and the bridge go
on, the sunburst is sprayed and polished, the strings are pulled tight and at the end the guitar is strummed.
Everything is SVG drawn by the script -->
<main>
<section class="bottega" data-bottega>
<div class="palco" data-palco>
<svg class="scena" data-scena aria-hidden="true"></svg>
<header class="testata">
<p class="marchio">
<svg viewBox="0 0 32 32" aria-hidden="true">
<path class="marchio__corpo" d="M11 4.5c-3 0-4.6 2.2-4.6 4.8 0 1.7.8 2.9.8 4.3 0 1.4-2.7 2.6-2.7 7.2C4.5 25.6 7.7 28 12 28s7.5-2.4 7.5-7.2c0-4.6-2.7-5.8-2.7-7.2 0-1.4.8-2.6.8-4.3 0-2.6-1.6-4.8-4.6-4.8Z"/>
<circle class="marchio__buca" cx="12" cy="17.5" r="2.4"/>
<path class="marchio__manico" d="M15.6 12.8L26.5 3.5l1.6 1.8-10.9 9.3Z"/>
</svg>
<span data-brand>Halden</span>
</p>
<p class="sotto">Handmade acoustic guitars</p>
</header>
<div class="fase-box" data-fase-box>
<p class="fase" data-fase><span class="fase__nome" data-fase-nome>The board</span><span class="fase__nota" data-fase-nota>Alpine spruce, seasoned ten years</span></p>
<p class="ore"><span class="ore__etichetta">Bench hours</span> <span class="ore__numero" data-ore>0</span></p>
</div>
<div class="finale" data-finale>
<p class="finale__sopra">Built to order</p>
<h1 class="finale__titolo">Built by hand. <em>Tuned by ear.</em></h1>
<p class="finale__testo">One guitar at a time, from the board to the first chord, in a small workshop by the river.</p>
<a class="tasto" href="#" data-tasto><span>Order a guitar</span></a>
</div>
<p class="cenno" data-cenno>
Scroll to build
<svg viewBox="0 0 24 32" aria-hidden="true"><path d="M12 3V27M4 19L12 28L20 19" /></svg>
</p>
</div>
</section>
<section class="dopo">
<p class="dopo__marchio">Halden Guitars</p>
<h2 class="dopo__titolo">Twelve guitars a year.</h2>
<p class="dopo__testo">Every one is cut, braced, sprayed and set up on the same bench. Pass by on Saturdays and play one.</p>
</section>
</main>
<script src="https://cdn.jsdelivr.net/npm/gsap@3.15.0/dist/gsap.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/gsap@3.15.0/dist/ScrollTrigger.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/lenis@1.3.26/dist/lenis.min.js"></script>
<script src="script.js"></script>
</body>
</html>Cambia valori, colori e testi con le manopole e guarda l’animazione rispondere dal vivo. Oppure scrivi tu nel codice. Poi scarica la cartella con le tue modifiche.
37 valori da cambiare
Col connettore di Animorio, Claude Code la prende da qui con tutta la sua guida e la adatta al tuo progetto. Incolla questa richiesta:
Prendi «La chitarra che si costruisce allo scroll» da Animorio e adattala al mio sitoLo scroll muove con scrub un oggetto da 0 a 1. Ogni fase della costruzione è un tratto di quel numero (il taglio da 0,05 a 0,2, la rosetta da 0,21 a 0,31 e così via) e ogni pezzo legge solo il suo tratto: risalendo, la chitarra si smonta allo stesso modo.
La linea del corpo è un tracciato SVG: il seghetto sta nel punto che getPointAtLength dà alla lunghezza tagliata, e la linea si disegna dietro di lui con stroke-dasharray. A taglio finito la tavola scende e sparisce, e resta il corpo.
I diciannove tasti stanno dove li metterebbe un liutaio: ogni tasto toglie un dodicesimo d’ottava, quindi la distanza dal capotasto è la scala per 1 meno 2 alla meno n dodicesimi. Cadono dal dodicesimo verso il corpo con back.out, sfalsati.
Ogni corda è un tracciato dal ponte al capotasto e alla meccanica, con una curva quadratica nel mezzo: la vibrazione sposta il punto di controllo con un seno che si smorza. Una seconda corda più chiara, spostata dall’altra parte, fa vedere l’ampiezza. Il puntatore pizzica una corda quando passa dall’altra parte della sua linea.
La segatura, la nebbia della vernice, la polvere nella luce, la lampada che dondola e le corde che suonano vanno sul ticker di GSAP; la gravità della segatura segue la rotazione della chitarra, così cade sempre verso il banco.
| Nome | File | Di partenza | Cosa cambia |
|---|---|---|---|
BRAND | script.js | 'Halden' | Il nome della bottega nella testata e sulla paletta. |
SCREENS | script.js | 6 | Quanto dura la costruzione, in schermate di scroll. |
SAWDUST | script.js | 1 | Quanta segatura schizza il seghetto, da 0 a 2. |
RING | script.js | 1 | Quanto suonano le corde pizzicate: 0,5 poco, 2 a lungo. |
STRUM | script.js | 3.6 | I secondi fra una pennata e l’altra a chitarra finita. |
LAMP | script.js | 1 | Quanto è forte il cono di luce della lampada (0 spenta). |
Per l’intestazione di una bottega di liuteria, di un negozio di strumenti musicali, di una scuola di musica o di una falegnameria; per raccontare come si fa un prodotto artigianale, dal materiale grezzo al pezzo finito, mentre si scende.
La stessa animazione con le misure adattate: su uno schermo stretto la chitarra sta in piedi sul suo supporto, con gli attrezzi ai lati, e alla fine si sdraia sul banco sotto il titolo, che va in alto e al centro. Le corde si pizzicano col dito.
Niente costruzione continua, niente segatura, nebbia, vibrazioni e scorrimento morbido: la costruzione è divisa in momenti fermi (la tavola, il corpo, la rosetta, i tasti, le meccaniche, la vernice, le corde, il titolo) che sfumano uno nell’altro scendendo.
GSAP 3.15.0, Lenis 1.3.26, Fraunces (font variabile) 5.3.0, Outfit (font variabile) 5.3.0.
Compressi con gzip, i tre file della demo pesano 16 KB; le librerie: GSAP + ScrollTrigger 45 KB, Lenis 5,3 KB.
Provata il 23 ottobre 2026
Puoi usarla nei tuoi progetti e in quelli dei tuoi clienti. Non puoi rivenderla né ridistribuirla così com’è. GSAP resta sotto la sua licenza Standard. Licenza completa.
Con l’email e la password del tuo account.
oppure con l’email
Hai fatto l’accesso come .
Con l’account scarichi lo zip di ogni animazione e di ogni pacchetto, gratis.