ARVEXA
← WorkAI Web Development

Adz Lab

A marketing site and lead funnel for a performance-creative agency serving ecommerce brands across the UK, USA, and UAE, built to sell the studio as hard as the ads it makes for clients.

Client
Adz Lab
Live
React 18TypeScriptViteFormspreeVercel
Adz Lab screenshot
01

The Problem

Adz Lab makes performance creative: video ads, UGC, and AI motion work for ecommerce and DTC brands. Their own site had to prove that in seconds rather than act as a static gallery. Every page needed to end at one conversion (a booked discovery call), carry dozens of ad reels without a slow first paint, and make its own revenue and creative-output numbers feel verified rather than printed.

02

The Starting Point

A five-page marketing site built from scratch, with no existing site or CMS to build on.

03

The Solution

The entire site, five routes, every section, and the contact form, lives in a single App.tsx, with a lightweight custom router built on history.pushState and popstate handling navigation and hash-scrolling in under 30 lines, instead of a router library or page-per-file scaffolding. Every ad reel sits behind an IntersectionObserver with a 400px lookahead margin. Videos mount only once they're about to enter view, play on hover, and reset on mouse-leave, so the homepage carries twenty-plus reels without twenty-plus video requests firing on load. The contact form validates name, work email, phone, and website against real patterns as each field blurs, not just on submit, and normalizes a bare domain like brand.com into a proper URL before it hits Formspree.

04

Architecture

Single App.tsx: 5 routes, custom pushState/popstate router
IntersectionObserver-gated video loading (400px lookahead)
Count-up stat animation via requestAnimationFrame, 1.6s ease
Formspree-validated contact form, no backend
Hand-rolled CSS design system (Tailwind installed, deliberately unused)
05

Engineering Work

Revenue and creative-output stats animate from zero the moment they scroll into view, eased over 1.6 seconds with requestAnimationFrame, a small piece of motion doing a credibility job so the number feels calculated live rather than typed into a template. Two dependencies were deliberately left unused despite being installed. Tailwind sat unused because the design's specific negative letter-spacing, oversized display type, and bespoke card geometry were more directly controlled with a plain, well-organized stylesheet than utility classes would allow, and a router library went unused because five routes and a couple of hash-linked anchors don't need one.

06

AI Contribution

No AI is used in this product. It's included in the portfolio for its production-engineering rigor, not for AI usage.

07

Results

Adz Lab's own reported business figures, $200,000 in revenue generated from their clients since 2024, $1,613,608.18 in revenue impact attributed to their ad creative, and 3,000+ creatives produced since 2024, are what the homepage counts up to on load. These are the agency's business numbers, not an Arvexa engineering-effort metric.

08

Final Product

Adz Lab screenshot
Adz Lab screenshot
Adz Lab screenshot

Have a project like this one?