It's hand-coded, no animation library. I take a single photograph and
turn it into thousands of small squares on an HTML canvas - each one
remembering where it belongs. From there it's just physics: the squares
catch, lift off as ashes, drift, and then find their way back to their
original spot. It only starts once you scroll it into view, so the page
stays light until the moment it matters.