i2D
Digital agency website with custom templates and GSAP
Visit the live site
Context
i2D is a digital marketing and web agency in Auckland, and I work there as a senior frontend developer. The agency's own site has two jobs: rank for Auckland searches such as web design and SEO, and show prospects the standard of work they would be paying for. A slow site, or one that looks like a template, would undercut both.
The problem
The agency's own site had to demonstrate the technical and visual standard it sells to clients.
What I built
Built a custom WordPress theme with bespoke page templates and GSAP scroll animations wired into the theme rather than bolted on with a plugin.
A short plugin list
The theme is custom, built for this site rather than adapted from a marketplace theme. On the front end it loads a single plugin, Contact Form 7, for enquiries. The service pages, the Discover, Design, Develop and Grow process section, and the 'Cost your project' call to action in the header all live in the theme itself. Fewer plugins means fewer scripts on every page and fewer things that can break when WordPress updates.
Animation as part of the theme
GSAP and ScrollTrigger ship with the theme instead of coming from an animation plugin. That keeps the motion in version control with the rest of the code, lets the team adjust it per template, and avoids the page-builder pattern where every section loads its own animation script. Content sits in ACF fields, so the team adds new service pages without touching the animation code.
The hard part
Integrating GSAP timelines into WordPress templates cleanly, without script conflicts or blocking render.
Result
Live agency site with custom animation behaviour that the team can extend per page.
Built with
- WordPress
- CMS the client's own team can publish through without a developer in the loop.
- Custom Templates
- Hand-built theme templates rather than a page builder, which keeps the markup and the page weight under control.
- GSAP
- Animation engine that runs transforms off the main layout path, so motion holds its frame rate.
- PHP
- Server language WordPress runs on, used here for the theme and any custom endpoints.
- ACF
- Defines structured custom fields, so editors fill in labelled inputs instead of formatting inside a page body.
“Our own website is the hardest sell — clients judge us on it before they ever talk to us. Yasir built the theme from scratch and put the GSAP work straight into the templates. My team still adds pages and nothing breaks.”
Hiring from Canada? What working together looks like →

