A vanilla JavaScript agency site with GSAP page transitions
An agency website built without a framework, where navigation between pages is a single continuous animation rather than a reload.
The problem
The design called for transitions that carried elements across page boundaries. A conventional multi-page site would have broken every one of them at the point of navigation.
Approach
Routing happened client-side against a small state machine, so a page change was a timeline the site could interrupt and reverse rather than an event it had to finish.
No framework meant no hydration cost, but it also meant writing the parts a framework usually gives you — so I kept the surface deliberately small: routing, transitions, and nothing else.