The brief we gave ourselves
A boutique studio with no external case studies has a credibility problem: why trust us with your site if we can't point to one? Our answer was to make ourselves the first client.
The site has one job — win clients and move visitors toward a discovery call. So it had to be fast on a mid-range phone over patchy mobile data, accessible by default, and honest about how we work and what we charge.
The stack, and why
Next.js with the App Router, exported as a fully static site. No server to keep warm, nothing to patch at 2am — just files served from Cloudflare's edge, including the Johannesburg point of presence, so it's quick for South African visitors.
TypeScript throughout, with CSS Modules instead of a utility framework so the styling stays small and readable. Type is led by Poppins; the palette is a single dark surface with one electric-orange accent used sparingly.
The contact form runs on a Cloudflare Pages Function — Turnstile screens spam before a Resend email is ever sent. No third-party form widget, no data leaving the stack we control.
Performance & accessibility
Static export means the browser gets HTML and CSS first, with JavaScript reserved for the few pieces that genuinely need it — the mobile menu, the contact form. Everything works without it.
Every motion has a static fallback for visitors who prefer reduced animation. We hold ourselves to performance and accessibility scores of 90 out of 100 or better; the same standard we ship for clients.
POPIA & data residency
The only personal data the site collects is what you type into the contact form, and it goes straight to us by email — no analytics profiles sold on, no surprise trackers.
Spam protection is privacy-respecting, and the privacy notice spells out exactly what's collected and why. Built to be POPIA-aware from the first commit, not retrofitted before launch.
Building in public
Every step of this build becomes a journal post and a changelog entry. You can watch the work happen rather than take our word for it — and that openness is itself the proof.
This is the same process we'll run for you: a clear scope, regular previews you can click, and a clean hand-over of everything you own.